gpt4 book ai didi

C程序没有进入for循环,而是递增循环索引变量?

转载 作者:行者123 更新时间:2023-12-04 09:33:44 24 4
gpt4 key购买 nike

除了被注释掉的内容外,这是我的程序的完整文本:

#include <stdio.h>



int main (int argc, char* argv[] ){

FILE* inFile = fopen(argv[1], "r");

if(inFile==0){
printf( "Error opening file, terminating program\n");
return 1;
}

char* charArray = malloc(100*sizeof(char));

int j=0;

printf("%i", j);


for(j=0; j++; j<100){
printf("%c", charArray[j]);
printf("%c", '\n');
}


printf("%i", j);

return 0;
}

我将使用参数 text 调用我的程序,该参数是我希望它打开的文本文件的名称。我的程序中被注释掉的部分将文本文件读入字符数组,与我试图在 for 循环中打印的数组相同。

现在,char 数组包含完整的垃圾,但这不是重点——重点是,它不输出任何东西,而它至少应该输出一些东西!

这是我得到的输出:

01

不知何故,j 只增加了一次,但我什至没有从 for 循环中打印任何结束行。这是怎么回事?

最佳答案

您的循环格式错误。

for 循环的格式是:

for(INITIALIZATION; CONDITION; INCREMENT/DECREMENT){

}

你把 CONDITIONINCREMENT/DECREMENT 搞混了

改变:

for(j=0; j++; j<100)

收件人:

for(j=0; j<100; j++)

关于C程序没有进入for循环,而是递增循环索引变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25882463/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com