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+ 浏览量

开启您的 职业

完成课程,获得认证

开始
广告
© . All rights reserved.