编译时出现的警告 warning: missing braces around initializer
---------------------------------------------------------------------------
/* declaration of Morse */
Morse MorseTable[]=
{
' ',NIL,NIL,NIL,NIL,NIL,NIL,NIL,
'A',DIH,DAH,NIL,NIL,NIL,NIL,NIL,
'B',DAH,DIH,DIH,DIH,NIL,NIL,NIL,
'C',DAH,DIH,DAH,DIH,NIL,NIL,NIL,
[etc...]
'0',DAH,DAH,DAH,DAH,DAH,NIL,NIL,
'?',DIH,DIH,DAH,DAH,DIH,DIH,NIL,
'/',DAH,DIH,DIH,DAH,DIH,NIL,NIL,
0, NIL,NIL,NIL,NIL,NIL,NIL,NIL /* END MARKER */
};
/* structure called Morse */
typedef struct
{
char code;
enum
{
NIL,
DIH,
DAH,
} data[7];
} Morse;
/* example of how table is called */
Morse *CharToMorse(char c)
{
int ct=0;
while(MorseTable[ct].code)
{
if(MorseTable[ct].code==c)
return(&MorseTable[ct]);
ct++;
}
return(NULL);
}
-----------------------------------------------------------------------
Looks one-dimensional to me.....
The warnings says:
$ gcc -Wall morse.c
morse.c:52: warning: missing braces around initializer
morse.c:52: warning: (near initialization for `MorseTable[0]')
line 52 is: ' ',NIL,NIL,NIL,NIL,NIL,NIL,NIL, (see above)
如何消除这样的编译警告呢,在线等待。