我经常想知道warning: array subscript is of type 'char'
警告背后的理由。我知道我可以将其转换为 int 或使用 关闭警告-Wno-char-subscripts
,但为什么这被认为是值得警告的问题?它与字符范围的小有关吗?还是我没有想到的其他东西?
#include <stdio.h>
int main(void) {
char a[10], i = 0;
a[i] = 0; // i is a char, hence the warning.
return 0;
}
谢谢你启发我。