如何打印存储在二维数组中的字符串记录?

时间:2009-01-19 06:34:50

标签: c arrays string

我正在使用C进行项目。我将几个记录存储在二维字符串数组中,其中一个字符串是记录名称,另一个字符串是实际值。例如:

myArray[0][0] = "filename1";
myArray[0][1] = "somefile.txt";
myArray[1][0] = "filename2";
myArray[1][1] = "anotherfile.txt";
// and so on ...

我知道如何在数组中存储值,但我不知道如何将它们打印出来。能帮我解决一下吗?

2 个答案:

答案 0 :(得分:6)

尝试使用2d数组字符(即1d字符串数组)

your_2d_array[0] = "file_name_1" /* and so on ... */


for( i = 0 ; i < num_of_file_names ; i++ )
{
    printf("%s\n", your_2d_array[i]);
}

如果您正在使用二维数组的字符串(即三维字符数组),因为编辑似乎表明,那么只需执行以下操作

for( i = 0; i < num_of_file_names ; i++ )
{
    printf("%s : %s \n", your_2d_array[i][0], your_2d_array[i][1] );
}

答案 1 :(得分:2)

我会选择以下内容:

int recordIndex;
for (recordIndex = 0; recordIndex < num_records; recordIndex++)
{
    printf("%s: %s\n", myArray[recordIndex][0], myArray[recordIndex][1]);
}

将输出如下:

filename1: somefile.txt
filename2: anotherfile.txt
...