1. c语言main函数问题 回答好追加分!
1.
main(){}
2.
mymain(){}
3
main(){
mymain();
}
我看你们老师的意思是
让你先写个空的main函数
然后改成你自己的函数
然后你自己再编写一个main函数
接下来应该要你在新编写的main函数里执行
mymain();
或者是让你看程序有没有执行mymain(){}
最后你们老师的结论就是程序是从main函数开始到main函数结束
结束
2. C语言 主函数 main 到底是什么
在dos的tc编辑器中,main主函数的类型是省略写的,也就是前面的类型不用标示,系统默认一个类型,我记不很清楚了,好像是int型的(这个我不确定,可以网络一下)
这个是标示函数的返回值类型的,c是有若干函数组从的,每个函数都有自己的返回类型和返回值。这个是龟腚
main也是函数,所以也有类型和返回值,只不过一般用户用不到。所以就省略去了,不标示也可以
但是在vc6.0这样的编辑器中,这个类型是不能省略的,必须标上,要不然会编译报错
3. C语言main函数
我们用命令行时可以有很多选项参数,但main只有两个参数,所以第二个参数是数组,命令行的多个参数就可存在数组中了。
4. c语言中main函数的参数
main函数可以不带参数,也可以带参数,这个参数可以认为是 main函数的形式参数。
C语言规定main函数的参数只能有两个,还规定argc(第一个形参)必须是整型变量,argv( 第二个形参)必须是指向字符串的指针数组。加上形参说明后,main函数的函数头应写为:
int main (int argc,char *argv[])
由于main函数不能被其它函数调用,因此不可能在程序内部取得实际值。那么,在何处把实参值赋予main函数的形参呢? 实际上,main函数的参数值是从操作系统命令行上获得的。当我们要运行一个可执行文件时,在DOS提示符下键入文件名,再输入实际参数即可把这些实参传送到main的形参中去。
DOS提示符下命令行的一般形式为:
C:\>可执行文件名 参数 参数……
5. C语言main函数详解
我以前学习C的时候收集过很多资料, 都是很认真的做过笔记. 关于main函数 有很大一块. 你加 QQ349057379我发给你
6. C语言main函数参数
所谓命令行参数就是这样,假设你编译出来的可执行文件为a.exe,然后你输入指令调用程序的命令是: a b c这样时,程序会将输入的指令变成3个字符串,分别是"a","b",和"c",并且通知你可用的字符串个数。
#include<stdio.h>
#include<string.h>
struct mmm { int num; char name[40]; } me;
void main(int argc,char* argv[]) { int b=0;
me.num=100001; strcpy(me.name,"小明");
if ( argc>1 ) {
b=1;
if ( strcmp(argv[1],"-xuehao")==0 ) printf("学号:%d\n",me.num);
else if ( strcmp(argv[1],"-name")==0 ) printf("姓名:%s\n",me.name);
else b=0;
}
if ( b==0 ) printf("命令行未包含有效参数。\n");
}
7. c语言main函数的位置是什么
C语言中main函数可以在任意位置。
每一个C语言程序有且只有一个主函数(main()),且程序必须从main()函数开始,它是程序开始时调用的第一个函数。函数定义形式:【int main(void){}】。
C语言规定,在一个C程序中,main()函数可以在任意位置。
解析:
每个C程序有且只有一个主函数(main),且程序必须从main()函数开始执行,而且main()函数可以放在程序中的任意位置。
详细介绍:
在宿主环境中编译的C程序必须定义一个名为main的函数,这是程序开始时调用的第一个函数。
main()函数的定义有以下两种形式:
(1)函数没有参数,返回值为int类型。int main( void ) { /*…*/ }.
(2)函数有两个参数,类型分别是int和char**,返回值是int类型。int main( int argc, char *argv ) { /*…*/ }.
这两种定义方式都符合C语言标准。除此之外,许多C的实现版本还支持第三种、非标准语法的定义方式:int main( int argc, char *argv, char *envp ) { /*…*/ }.
函数返回值是int,有3个参数:第一个是int,另外两个是char**。
8. C语言中的main()函数
一、定义
main函数,又称主函数,是程序执行的起点,main是相对来说的,如同音学理论之主调于泛音,泛音即程序中的除main之外的其他函数,迎合人们的思考方式而生成的而非必定的模式.有主有次,执行起来条清缕析,既可将程序模块化又实现了一个闭合的整体。
二、main()函数的形式
在最新的 C99 标准中,只有以下两种定义方式是正确的:
int main(void) /*无参数形式*/
{
...
return 0;
}
int main(int argc, char *argv[]) /*带参数形式*/
{
...
return 0;
}
int指明了main()函数的返回类型,函数名后面的圆括号一般包含传递给函数的信息。void表示没有给函数传递参数。
三、main()函数的返回值
从前面我们知道main()函数的返回值类型是int型的,而程序最后的 return 0; 正与之遥相呼应,0就是main()函数的返回值。那么这个0返回到那里呢?返回给操作系统,表示程序正常退出。
因为return语句通常写在程序的最后,不管返回什么值,只要到达这一步,说明程序已经运行完毕。而return的作用不仅在于返回一个值,还在于结束函数。
四、main()函数的参数
C编译器允许main()函数没有参数,或者有两个参数(有些实现允许更多的参数,但这只是对标准的扩展)。这两个参数,一个是int类型,一个是字符串类型。
第一个参数是命令行中的字符串数。按照惯例(但不是必须的),这个int参数被称为argc(argument count)。第二个参数是一个指向字符串的指针数组。命令行中的每个字符串被存储到内存中,并且分配一个指针指向它。
按照惯例,这个指针数组被称为argv(argument value)。系统使用空格把各个字符串格开。一般情况下,把程序本身的名字赋值给argv[0],接着,把最后的第一个字符串赋给argv[1],等等。
(8)c语言main函数扩展阅读
C++中的main函数的应用:
C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,不能写成某个结构体或某个类的成员。
虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。
9. C语言中的main函数参数作用
在调用可执行程序时,可以通过main函数的参数将命令行的调用参数传递给main函数。
事实上,main()函数既可以是无参函数,也可以是有参的函数。对于有参的形式来说,就需要向其传递参数。
从函数参数的形式上看,包含一个整型和一个指向字符指针的指针。当一个C的源程序经过编译、链接后,会生成扩展名为.EXE的可执行文件(对windows操作系统而言),这是可以在操作系统下直接运行的文件,换句话说,就是由系统来启动运行的。由系统在启动运行时传递参数。
在操作系统环境下,一条完整的运行命令应包括两部分:命令与相应的参数。其格式为:
命令参数1参数2....参数nt;
此格式也称为命令行。命令行中的命令就是可执行文件的文件名,其后所跟参数需用空格分隔,并为对命令的进一步补充,也即是传递给main()函数的参数。
命令行与main()函数的参数存在如下的关系:
设命令行为:program str1 str2 str3 str4 str5
(9)c语言main函数扩展阅读:
main 函数的返回值类型必须是 int ,这样返回值才能传递给程序的激活者(如操作系统)。
如果 main 函数的最后没有写 return 语句的话,C99 规定编译器要自动在生成的目标文件中(如 exe 文件)加入return 0; ,表示程序正常退出。不过,我还是建议你最好在main函数的最后加上return 语句,虽然没有这个必要,但这是一个好的习惯。
也就是说在最新的C语言标准中强制要求main函数的返回值类型为int,main函数的返回值是传递给操作系统,让操作系统判断程序的执行情况(是正常结束还是出现异常)。
10. c语言main函数的参数都是什么意思
argc---是带入参数的个数,argv[]是中每个数组元素代表每个带入的字符串参数,如执行文件名为“hello”,如果执行 hello a,
int main(int argc,char *argv[])
{
printf("argc:%d\n",argc);
printf("argv[0]:%s\n",argv[0]);
printf("argc[1]:%s\n",argv[1]);
return 0;
}
结果:
argc:2
argv[0]:./hello
argv[1]:a