Цитата(mephisto @ 25.10.2008, 8:54)

Покажи что ты делаешь и что у тебя не получается.
Код
char **fileSB;
int input_from_file()
{
FILE *stream;
char line[100];
int i=0;
stream = fopen("programmaSB.txt","r");
if(stream == NULL) {printf("Not found file!\n"); return -1;}
while (1)
{
if(feof(stream)) break;
fgets(line, sizeof(line)-1, stream);
i++;
}
rewind(stream);
lenfile = i;
fileSB = (char **)malloc(lenfile*sizeof(char **));
for(i=0;i<lenfile;i++)
{
fgets(line,sizeof(line)-1,stream);
fileSB[i] = (char *)malloc(sizeof(line));
strcpy(fileSB[i],line);
}
fclose(stream);
return 0;
}
int main()
{
input_from_file();
return 0;
}
В общем сделал fileSB глобальной.
Как я понял чтобы при локальной переменной fileSB все работало нужно выделять память под нее в main(). А для этого нужно знать кол-во строк в файле, т.е. либо немного захломлять main() либо делать отдельную ф-ию для подсчета строк.
Или я что то упустил из виду?
