看视频的代码 自己写过来就出警告 视频中没什么问题
#include<stdio.h>
#define max 3
int main()
{
int array[] = { 1,2,3 };
int i=0 ;
for (size_t i = 0; i < max; i++)
{
printf("array[%d] = %d\n", i, array[i]);
}
return 0;
}
结果没问题,就是出现警告.
警告 C6246 “i”的局部声明遮蔽了外部作用域中具有相同名称的声明
警告 C6340 符号不匹配: 已将“unsigned int”作为 Param(2) 传递,但需要使用一些 signed 类型来调用“printf”。
我的解答思路和尝试过的方法
看官方解释没看懂
我自己找出来只要不用size_t 声明变量 就不会出现警告
我想要达到的结果
目前就是结果不重要,就像搞清楚为什么出这个警告,之前第一次写完是没有的,怕以后经常出现类似问题请各位帮忙看看.
有点强迫症..