C语言 文本字符串存入二维数组

字符串存入数组

文本内容:

line1_1 line1_2

line2_1 line2_2

line3_1 line3_2

line4_1 line4_2

line5_1 line5_2

line6_1 line6_2

C代码:

 1 #include <stdlib.h>
 2 #include <stdio.h>
 3 #include <string.h>
 4 #define LEN 100
 5 
 6 void readFile(void)
 7 {
 8     FILE *fp=fopen("dim.txt","r");
 9     char buf[LEN]; char all[10][LEN];
10     int ii=0;
11 
12     while(fp!=NULL)
13     {
14         if((fgets(buf,LEN,fp))!=NULL)
15         {
16             buf[strlen(buf)-1]='\0';
17             strcpy(all[ii],buf);
18             ii++;        
19         }
20         else
21         {
22             break;
23         }
24     }
25     free(fp);
26     /*    
27     for(size_t i=0; i<sizeof(all)/sizeof(all[0]); i++)
28     {
29         printf("%s\n",all[i]);
30     } */
31     // printf("%lu\n",sizeof(all[0])/sizeof(all[0][0])); // 100 计算列数
32     // printf("%lu\n",sizeof(all)/sizeof(all[0]));    //10 计算行数
33     char (*p)[LEN]=all; // 二维数组指针
34     for(int i=0; i<ii; i++)
35     {
36         printf("%s\n",p[i]);
37     }
38 }
39 
40 int main(void)
41 {
42      readFile();
43     exit(0);
44 }