其实主函数的参数也是可以打印的:打印结果:我不是很懂什么是 a.out,欢迎大家研究研究
argv 是执行程序时候的名字,用哪个名字运行的这个程序,argv 就是那个名字
如果用gcc编译器编译代码的时候没有指定名字,默认就是a.out
$ ls
main.c
$ cat main.c
#include <stdio.h>
int main(int argc, char **argv)
{
printf("这是 int argc: %d\n", argc);
printf("这是 char **argv: ");
for(int i = 0; argv; i++){
printf("%s\n", argv);
}
return 0;
}
$ gcc -g -Wall -o main main.c
$ ls
mainmain.c
$ ./main
这是 int argc: 1
这是 char **argv: ./main
$ mv main a.out
$ ls
a.outmain.c
$ ./a.out
这是 int argc: 1
这是 char **argv: ./a.out
$ ln -s a.out abcd
$ ls
abcda.outmain.c
$ ./abcd
这是 int argc: 1
这是 char **argv: ./abcd
$ ls
abcda.outmain.c
$ rm abcd a.out
$ ls
main.c
$ gcc -g -Wall main.c
$ ls
a.outmain.c
$ ./a.out
这是 int argc: 1
这是 char **argv: ./a.out
$
你上面贴的那个图片中的软件叫什么名字呀?
看起来挺不错,可以比较两个代码的不同?
傻眼貓咪 发表于 2021-12-13 17:58
在 C++ 中,没有区别,两者都是相同的。
这两个定义也适用于 C,但第二个带有 void 的定义在技术上 ...
我找到了,^_^
https://www.geeksforgeeks.org/difference-int-main-int-mainvoid/ 傻眼貓咪 发表于 2021-12-13 18:24
共同学习
{:10_266:}{:10_266:}{:10_266:} 人造人 发表于 2021-12-13 17:52
c99标准只有这两种
这个和第2种一样
{:10_266:}{:10_266:}{:10_259:} 小黄练编程 发表于 2021-12-13 18:38
^_^ 人造人 发表于 2021-12-13 18:35
我找到了,^_^
https://www.geeksforgeeks.org/difference-int-main-int-mainvoid/
{:5_109:}{:5_109:} 人造人 发表于 2021-12-13 18:28
argv 是执行程序时候的名字,用哪个名字运行的这个程序,argv 就是那个名字
如果用gcc编译器编译 ...
笔记中{:5_108:}
页:
1
[2]