我试图通过参数argc和argv来理解main函数。在命令行中,我试图在屏幕上复制多个txt文件的内容(连接)。当我在命令行appname.exe中写入f1.txt时,来自f1.txt的内容在循环中打印。如果f1.txt有文字" abcda"控制台中的输出将是" abcdaabcdaabcda ..."。对不起我的英语不好;谁能帮助我理解我做错了什么?
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(int argc, char *argv[])
{
int i;
for (i = 2; i <= argc - 1;i+2)
{
FILE *f = fopen(argv[i], "r");
if (f == 0)
{
printf("Error\n");
}
else
{
int x;
while ((x = fgetc(f)) != EOF)
{
printf("%c", x);
}
}
fclose(f);
}
}
答案 0 :(得分:1)
这是一个大问题:
for (i = 2; i <= argc - 1;i+2)
我认为你的意思是:
for (i = 2; i <= argc - 1; i++)