gpt4 book ai didi

使用命令行参数检查范围

转载 作者:太空宇宙 更新时间:2023-11-04 00:23:02 24 4
gpt4 key购买 nike

在处理一个简单的 C 程序时,我遇到了 if 测试:

int line_number = 0;
if ((line_number >= argv[2]) && (line_number <= argv[4]))

海湾合作委员会说:

cp.c:25: warning: comparison between pointer and integercp.c:25: warning: comparison between pointer and integer

如何正确检查我要处理的行的范围?

最佳答案

当然不行:argv 是指向char 的指针..不清楚你想做什么但是想想那个 argv[2] 是第三个参数,argv[4] 是第五个参数。但它们是 char* 类型(它们是字符串),所以如果你想将它们解析为整数,你应该使用函数 atoi 来完成:

int value = atoi(argv[2]);

会把作为第三个参数的int解析出来放到变量中,然后你就可以随便查了。

关于使用命令行参数检查范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2405588/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com