我使用缓冲读取器读入输入,然后将其添加到数组中。但由于某种原因,它只将最后一个输入添加到数组中。我还想检查第一个输入是否为零......所以我正在使用check变量。但主要问题是它没有将它添加到数组中。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
const int SIZE = 100;
char input[SIZE];
while(1)
{
fgets (input, SIZE - 2, stdin); // input
printf("%d", strcmp(input, "exit")); //returining 10 instead of 0
if(strcmp(input, "exit") == 0)
{
printf("SHELL Terminated\n");
exit(0);
}
return 0;
}
答案 0 :(得分:3)
将int i = 0
移到while循环之外。在每次迭代中,i
被初始化为0,因此您的数组只有一个值,并且在第0个索引中