【发布时间】:2015-05-17 12:40:03
【问题描述】:
array 应该将每对中的第一个 0 更改为字符串 inputlist 中的下一个数字。
代码:
{
int array[8][8][2]= {{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}}};
size_t i,j,p;
char duck;
char inputList[66] = "01111011001111110110010110010100001011011000101111111000110100001";
i=0;
j=0;
for(p=0;p<strlen(inputList);p++){
if(i==7){
i=0;
}
if(j==7){
j=0;
}
duck=inputList[p];
array[i][j][0]=atoi(duck);
i+=1;
j+=1;
}
return 0;
}
返回与 atoi 相关的错误。这是怎么回事?
错误:
传递 'atoi' 的参数 1 使指针从整数而不进行强制转换
我对演员表的含义有点困惑。我觉得我把它弄混了试图补偿。
【问题讨论】:
-
inputList[p]是一个字符,atoi()需要一个字符串,也就是char*。 -
另外:1) 修复格式 2) 添加错误处理:
i和j不应超过7