在大学时,有人问我我们的程序是否检测到从命令行参数输入的字符串是否是整数,而它没有检测到(./Program 3.7
)。现在我想知道如何检测到这一点。因此,例如a
atoi 检测到的输入无效,但例如输入3.6
应该是无效的,但 atoi 会将其转换为整数。
#include <stdio.h>
int main(int argc, char *argv[]) {
if (argc > 1) {
int number = atoi(argv[1]);
printf("okay\n");
}
}
但是只有当 argv[1] 真的是一个整数时才应该打印 offcourse OK。希望我的问题很清楚。非常感谢。