【发布时间】:2014-04-05 11:10:03
【问题描述】:
嗨,我对编程很陌生,我需要一些小的帮助来将 char 数组转换为字符串,但我不确定哪里出了问题。我需要在 %c 中获取用户输入,并且我输入第一个输入 - aabcc,然后单击输入 第二个输入 - fsdff 然后再次输入 第三次输入 - rewrr 然后再次输入 第 4 个输入 - zzxcc 并再次输入 最后输入 - asdfg。
但是输出给了我 array 1 = aabcc , 2nd array = fsdf (其中一个丢失了) 3rd array = f '\n' ... 其次是 3rd 4th 和 5th array 显示不正确。提前谢谢大家。
int main()
{
int i, j;
char ch[5][6];
char c[5][5];
for (i = 0; i < 5; i++)
for (j = 0; j<5; j++)
scanf("%c", &c[i][j]); // get user input
memcpy(ch[0], c[0], 5);
ch[0][5] = '\0';
memcpy(ch[1], c[1], 5);
ch[1][5] = '\0';
memcpy(ch[2], c[2], 5);
ch[2][5] = '\0';
memcpy(ch[3], c[3], 5);
ch[3][5] = '\0';
memcpy(ch[4], c[4], 5);
ch[4][5] = '\0';
printf("array 1 = %s, array 2 = %s , array 3 = %s , array 4 = %s , array 5 = %s ", ch[0], ch[1], ch[2], ch[3], ch[4]);
}
【问题讨论】:
-
@user850307 您的 c++ 链接,但 OP 在 C 中的要求。
标签: c string multidimensional-array char