%lu报错
先贴源码
#include <stdio.h>
int main()
{
int a = 99;
printf("%d\n",sizeof(a));
printf("%lu\n",sizeof(a));
return 0;
}
今天第一次见%lu,查了一下,是无符号长整形,就想试一下
上面是我的代码,把 printf("%lu\n",sizeof(a)); 注释掉,只用%d是可以的
但用%lu就提示
warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘unsigned int’ [-Wformat=]
printf("%lu\n",sizeof(a));
为什么?
是版本问题么?
视频中老师也是这样写的啊