too many initializers

来源:百度知道 编辑:UC知道 时间:2024/06/06 16:25:56
#include "stdafx.h"
#include"stdio.h"
#include"conio.h"
int main(int argc, char* argv[])
{char a[9][9]={{"","","","*"},{"","","*","*","*"},{"","*","*","*","*","*"},{"*","*","*","*","*","*","*"},{"","*","*","*","*","*"},{"","","*","*","*"},{"","","","*"}};
int i,j;
printf("%c",a[i][j]);
return 0;
}
那里出错了?谢谢回复。

如果要使用缺省赋值,则前面的每行不能缺省赋值,只能在最后缺省,也就是你可以对前7行进行完全赋值,后两行缺省,却不能每行中缺一些,还缺行

*****
*****双引号""里面是一个字符串,不是一个字符(单引号''才是),以上二维字符数值初始化用到的双引号必须全部改成单引号,而且引号内的空格必须真正按下一个空格。
*****也就是改成:
char a[9][9]={
{' ' ,' ' ,' ' ,'*'}, //a[0] = " *"

{' ' ,' ' ,'*' ,'*' ,'*'}, //a[1] = " ***"

{' ' ,'*' ,'*' ,'*' ,'*' ,'*'},//a[2] = " *****"

{'*' ,'*' ,'*' ,'*' ,'*' ,'*' ,'*'}, // "*******"

{' ' ,'*' ,'*' ,'*' ,'*' ,'*'},//a[4] = " *****"

{' ' ,' ' ,'*' ,'*' ,'*'}, //a[5] = " ***"

{' ' ,' ' ,' ' ,'*'} }; //a[6] = " *"<