当我尝试将参数传递到 C 语言的 main() 函数时,我总是只能得到 1 个参数(并且 argc 始终为 1,即程序的名称)。我的程序在 gcc 中编译得很好。
#include <stdio.h>
#include <string.h>
#include "chkin.h"
#include "sort.h"
#include "display.h"
int main(int argc, char* argv[])
{
if(1 == chkin(argc, argv))
return 0;
if(strcmp("sort", argv[1]));
sort(argc, argv);
if(strcmp("display", argv[1]));
display(argc, argv);
return 0;
}
我运行的命令是:./program sort tfile.txt。 会出现什么问题?
最佳答案
gdb(基于您对@Jack的评论)只会读取第一个参数“程序”。 如果您想通过 gdb 运行该程序,您必须尝试:
gdb ./program
(gdb) r sort tfile.txt
希望这有帮助
关于c - 与 C 中的 main() 函数不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7510174/