我想初始化一个以空结尾并包含静态以空结尾的数组的静态数组。我还希望能够在以后打印所有内容。
这是我到目前为止的代码,显然初始化和数据类型不正确:
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 );
}
我将如何正确初始化和使用这种数据?
谢谢!