作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 codeeval 中,一些挑战要求我们从文件中读取测试用例,该文件是程序的第一个参数,这是什么意思,程序的第一个参数?
我的代码可以在我的电脑上运行,但是当我提交解决方案时,它显示我错了,我不知道如何更改第一个参数的路径。
我的代码如下:
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp;
int num[100];
int i;
int sum = 0;
char ch;
int reminder;
fp = fopen("one.txt", "r+");
do{
fscanf(fp, "%d", &num[i]);
while(num[i]!=0){
reminder = num[i]%10;
sum = sum + reminder;
num[i] = num[i]/10;
}
printf("%d\n", sum);
sum = 0;
i++;
}while((ch = fgetc(fp)) != EOF);
fclose(fp);
system("pause");
return 0;
}
最佳答案
当你在 Unix shell 或 Windows 命令窗口中启动程序时,你可以给它一个参数。例如,如果您的程序被称为“runtests”,则您可以在一行中键入“runtests file.txt”,然后按 Enter。 “file.txt”是程序的一个参数(第一个也是唯一的参数)。
要让您的程序访问这些参数,您需要向 main 添加参数:
int main(int argc, char *argv[]) {
// ....
fp = fopen(argv[1], "r+");
// ....
请注意,argc 将为 2,因为 argv[0] 将是程序本身的名称“runtests”。
我相信您还可以将文件图标拖放到可执行文件的图标上,第一个参数将是拖放文件的完整路径名。
关于c - codeeval 中关于程序第一个参数的一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24544919/
我是一名优秀的程序员,十分优秀!