我有下面的代码,它用strtok获取一些char标记,它将这些标记一个接一个地保存在表中,最后打印这些标记。我的错误是在表行:数组中的字符指针值
error: invalid conversion from 'char* to 'char''
东西我误解有关指针和文字,我不知道怎么写表行((我想有以下格式))。我试过类似
table[i][5+(i/2)] = *ptr;
但我有分段错误。
i = 0;
int offset = 5;
char* ptr;
ptr = strtok(buff,"do something");
char table[1][10];
while (ptr != NULL)
{
if (i == 0)
strcat(machine, ptr);
if (i == 2)
strcat(number, ptr);
if (i == 4)
strcat(hr, ptr);
if (i == 6)
strcat(dw, ptr);
if (i == 8)
strcat(vcc, ptr);
ptr = strtok(NULL,"do something");
table[i][5+(i/2)] = ptr;
i++;
}
printf("Final: %s, %s, %s, %s, %s\n", machine, number, hr, dw, vcc);
'table [i] [5+(i/2)] = * ptr;'是正确的。分段错误是因为“我”超过了表格尺寸。 – Maroun