在我的代码中,我无法在 for 循环初始化部分初始化变量。当我写这段代码时:
long unsigned int arr[3][3];
char str[50];
for(;gets(str);)
{
int temp=0;
for(int i,j,k=0; str[k]!='\0'; k++){ if(str[k]!=' ')temp=temp*10+(str[k]-48);
编译器显示
error: 'for' loop initial declarations are only allowed in c99 mode
我不知道这意味着什么,但是如果我这样编写代码:
long unsigned int arr[3][3];
char str[50];
for(;gets(str);)
{
int temp=0;
int i,j,k=0;
for(; str[k]!='\0'; k++){ if(str[k]!=' ')temp=temp*10+(str[k]-48);
它工作正常。为什么会这样?