C语言调试技巧:main函数输入参数

8 篇文章 0 订阅

带入参的main函数

介绍

带入参的main函数主要用于一些基本调试,main函数的入参在main函数里被解析为字符串,因此根据具体的调试业务可以需要将字符串转为相应的int类型或double类型进行其他的操作。

函数实现

// test_mainin.c
#include <stdio.h>

int main(int argc, char *argv[]) {
	printf("argc = %d\n", argc);
	for (int i = 0; i < argc; i++) {
		printf("argv[%d] = %s\n", i, argv[i]);
	}
}

解释

main函数的入参中,其中,argc为入参的个数,是一个int类型的变量, argv[]为入参数组,是字符串指针。

其中,argv[0]是我们可执行文件的相对路径名。其余的argv[i]是我们传入的参数

gcc -o test_mainin test_mainin.c

$ ./test_mainin 
argc = 1
argv[0] = ./test_mainin

$ ./test_mainin 1
argc = 2
argv[0] = ./test_mainin
argv[1] = 1

$ ./test_mainin 123
argc = 2
argv[0] = ./test_mainin
argv[1] = 123

$ ./test_mainin good 123
argc = 3
argv[0] = ./test_mainin
argv[1] = good
argv[2] = 123

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在C语言中,main函数是程序的入口函数,它可以接受命令行参数参数argc表示参数的个数,参数**argv是一个指向字符数组的指针,用于存储输入参数。argv\[0\]表示程序的名称,argv\[1\]~argv\[n\]表示输入参数。当不传递参数时,可以将main函数定义为int main(void)。\[2\]例如,假设程序的名称为prog,当只输入prog时,argc的值为1,表示只有一个程序名称,argv\[0\]指向输入的程序路径及名称。当输入prog para_1时,argc的值为2,表示除了程序名外还有一个参数,argv\[0\]指向输入的程序路径及名称,argv\[1\]指向参数para_1的字符串。\[3\] #### 引用[.reference_title] - *1* *2* [C语言main函数传参](https://blog.csdn.net/weixin_40825989/article/details/113117944)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [C语言main函数参数含义及输入](https://blog.csdn.net/parasoft/article/details/33750033)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值