- 论坛徽章:
- 0
|
程序功能:
读取某个文件中的字符串,以行为单位,放入一个数组中,实际就是个字符串的数组。
- #include<stdio.h>
- #include<string.h>
- main()
- {
- char *ca[100];
- int lines;
- int i = 0;
- lines = getline(ca,10);
- if (lines > 0) {
- for (i = 0; i < lines;i++)
- {
- printf("-------[%s]------\n",ca[i]);
- }
-
- for (i = 0; i<lines;i++)
- {
- free(ca[i]);
- }
- } else {
- printf("read error");
- }
- }
- int getline(char *lineptr[] ,int maxlines)
- { int nlines = 0;
- int readchar;
- char config[100];
- FILE *fp;
- char *p;
- fp = fopen("read.txt","r");
- int i = 0;
- int j = 0;
- while ((readchar = getc(fp)) != EOF){
- if (readchar == '\n') {
-
- config[i] = '\0';
- p = (char*)malloc(30);
- if (!p || nlines == maxlines)
- {
- for (j=0;j<nlines;j++)
- free(lineptr[j]);
- return -1;
- }
- else {
- strcpy(p, config);
- lineptr[nlines++] = p;
- i = 0;
- }
- } else{
- config[i++] = readchar;
- }
- }
- return nlines;
- }
复制代码 |
|