널로 끝나고 정적 널 종료 배열을 포함하는 정적 배열을 초기화하고 싶습니다. 나중에 모든 내용을 인쇄 할 수 있기를 바랍니다.정적 다차원 널 종료 배열 초기화
void print_commands(char *commands[][])
{
int i, j;
char *command[];
for(i = 0; commands[][i] != NULL; i++)
{
command = commands[][i];
printf("Command #%d: %s\n", i, command[0]);
for(j = 1; command[j] != NULL; j++)
{
printf("Argument #%d: %s\n", j, command[j]);
}
}
}
int main(int argc, char *argv[])
{
char *commands[][5] = {
{"less", 0},
{"sort", 0},
{"cat", "my.txt", 0},
{"echo", "hello", 0},
NULL};
print_commands(commands);
exit(0);
}
가 어떻게에 대해 제대로 초기화하는 데이터의 종류를 사용하여 갈 것입니다 :
여기 내가있어 코드가 지금까지 분명히 초기화 및 데이터 유형이 올바르지 않은입니까?
감사합니다.
. 또한, int i ... for (i = 0은 OP가 C90을 사용하고 복합 리터럴이 작동하지 않을 것이라고 제안합니다.) – Lundin
첫 번째 버전에서는 c99 컴파일러를 사용합니다 (예 : VC10) – BLUEPIXY