C 語言中的 %d 和 %i 格式說明符之間的區別。


格式說明符

在 C 程式語言中,%d 和 %i 是格式說明符,其中 %d 將變數型別指定為小數,而 %i 將型別指定為整數。在用法方面,使用 %d 或 %i 列印數字時在 printf() 函式輸出中沒有差異,但在使用 scanf 時會出現差異。scanf() 函式使用 %i 檢測基礎型別,但使用 %d 時假定為 10 進位制數。

示例 (C)

 即時演示

#include <stdio.h>
int main() {
   int num1 ,num2;
   int num3, num4;
   scanf("%i%d",&num1 , &num2);
   printf("%i\t%d
",num1, num2);    num3 = 010;    num4 = 010;    printf("%i\t%d",num3, num4);    return 0; }

輸出

32767-498932064
8 8

此處 010 是一個八進位制數字。scanf 使用 %d 讀數字為 10,並使用 %i 讀數字為 8。在兩種情況下,printf 都適於將數字讀作八進位制。

更新於: 06-Jan-2020

13K+ 瀏覽量

開啟您的 職業

完成課程,獲得認證

開始
廣告