【发布时间】:2014-03-01 02:34:32
【问题描述】:
这是我的代码:
void fun1(char data[2][10]);//function prototype
int i, j; char data[2][11];//variables
for (i = 0; i < 2; i++)//populating the 2D array of chars
{
for (j = 0; j < 11; j++)
{
scanf("%c", &data[i][j]);
}
}
fun1(data);
void fun1(char data[2][10])//function to print the array out
{
int i, j, sum;
printf("\n");
for (i = 0; i < 2; i++)
{
for (j = 0; j < 11; j++)
{
printf("%c", data[i][j]);
}
}
}
这是我的输入和输出:
(inputs)
aaabbbccce
aaabbbccce
(outputs)
aaabbbccce
aaabbbccce
我的问题是为什么我没有指定一个换行符时输出中有一个换行符? 顺便问一下,如果我的函数参数与数组的大小不匹配,可以吗?比如我的数组是char data[2][11],我传入的参数是char data[2][10]。
【问题讨论】:
-
输入
aaabbbccce后,您是否可能按回车键? -
是的,我输入了:aaabbbccce(回车)aaabbbccce(回车)
-
当您输入“enter”时,您指定了一个换行符。输入 = 换行符。