Linux-Main简介

本文介绍了C程序在Linux环境下从main函数开始执行的原理,包括main函数的头文件、原型、参数及返回值。main函数接受argc和argv参数,用于处理命令行输入,返回整型状态值表示程序退出状态。通过return、exit、_Exit等函数可实现程序的正常或异常退出。了解main函数的内存地址分配规律对深入理解C程序运行机制有一定帮助。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C程序从main函数(主函数)开始执行并由它退出.它具有函数调用的功能.
头文件:#include<stdio.h>
原型:int main(int argc,char *argv[]);
参数:argc表示命令行参数的个数,argv表示指向命令行参数的指针数组
返回值:整型状态的值 0-正常退出 非0-异常退出 操作系统去断定
定义:有参int main(int argc,char *argv[]);int main(int argc,char **argv);无参int main(void);
退出:||return 0||exit(0)||exit(0)||_Exit(0)|| 【return 整型值 与 整型值调用这三个函数一致的】
退出状态查询:echo $?

void类型返回值:
void main(){
    return; ||exit;||_exit;||_Exit||
}

#include<stdlib.h>:void exit(int status); void _Exit(int status);
#include<unistd.h>:void _exit(int status);

 

#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
int main(int argc,char *argv[]){
	
	int i,j;char **p;
	printf("命令行参数个数:argc=%d\n",argc);
	
	for(j=0,p=argv;j<argc,*p!=NULL;j++,p++){
		printf("argv[%d]=%s addr[%d]=%p\n",j,argv[j],j,&argv[j]);
		printf("argv[%d]=%s addr[%d]=%p\n",j,*p,j,p);//puts(*p);
	}
	
	char test[6]="test!";
	for(i=0;i<6;i++){
		printf("test[%d]=%c addr[%d]=%p\n",i,test[i],i,&test[i]);
	}
	
	return 0;//exit(0)||_Exit(0)||_exit(0);
}

一个难点:main函数参数(不论多大字节什么类型,默认未字符串)在内存中的地址固定以8字节增加,底层操作,了解即可,不做深究。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值