0
这是一个大型程序中的一个无效函数,具有打印某种图表的功能。它将首先打印标题,然后使用for循环打印13行,从4个数组中调用信息。名称,2D Char数组,分数,2D Int数组,平均值,1D浮点数组和字母,1D Char数组。无效函数分割错误中的字符串错误
函数本身看起来像这样:
void display(char names[][8], int scores[][4], float *average, char *letter)
{
int q = 0;
printf("\n\n Name \t E1 \t E2 \t E3 \t E4 \t Avg \t Grade");
for(q=0; q<13; q++)
{
printf("\n %s \t %d \t %d \t %d \t %d \t %.2f \t %c", names[q][0], scores[q][0],
scores[q][1], scores[q][2], scores[q][3], average[q], letter[q]);
}
return;
}
一旦我运行它,它运行良好,直到函数调用此,有一次我到那里,我得到一个分段错误。作为参考,这是函数调用:
display(&names, &scores, &average, &letter);
中的printf的%C更改%S停止分段错误,但我需要它来打印阵列不仅仅是单个字符在举行的弦。
那么如何打印字符串(和声明作为一个整体)没有分段错误?