我需要在项目中将 char 格式的字符串元素转换为 int 格式数组。 我使用以下函数,但编译后出现错误:
a[k] = atoi (str1[k]);
a[k] = strtol(str1[k],NULL,16);
K 是一个计数器。
错误:#167:“char”类型的参数与“const char *restrict”类型的参数不兼容
最佳答案
strtol和 atoi将 char 数组的地址(然后是 char*
)作为转换的输入(一个整数可以在多个字符上编码)。
正确的使用方法:
a[k] = atoi (&str1[k]);
a[k] = strtol(&str1[k],NULL,16);
关于在c中将字符串元素转换为int数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18976670/