我正在编写一个带有单个命令行参数的程序。该参数需要在[0,INT_MAX]范围内。采用argv [1]并将其转换为int的最佳方法是什么,同时确保它是一个有效的整数?
答案 0 :(得分:4)
argv[1]
是第一个命令行arg,strtoul()转换为无符号整数
此外argc是参数的数量,因此在调用argv[1]
之前检查它至少为2(argc计算程序名称)
严格来说strtoul()是c ++,但是大多数c编译器都在它们的标准库中支持它,它采用'c'样式的char * string