我正在 try catch 命令行参数并将其存储为字符串,但是当我尝试将其转换为 int 时出现编译器错误:
The error is: initialization makes integer from pointer without a cast [enabled by default] char test = argv[1];
#include <stdio.h>
int main(int argc, char** argv)
{
char test = argv[1];
printf("%c\n", test);
return 0;
}
最佳答案
argv[1]
正在保存一个字符串,您正试图将它存储在字符变量中,您需要的是一个字符指针
char *test = argv[1];
打印出来
printf("%s\n", test);
关于捕获命令行参数并存储它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36618401/