У меня есть функция, которая читает строки из текстового файла и сохраняет их в двумерном массиве с максимум 1000 строк и 81 столбцом (80 полезных символов и \0
).
Как я могу представитьдетектор количества символов в одной строке этого текстового файла, прежде чем я вставлю его в массив?
Поскольку в упражнении говорится, что текстовый файл может содержать не более 80 символов (полезно) в каждой строке, но моя функция в данный момент выполняет следующее: если он содержит более 80, он просто продолжает читать строку вследующая строка массива.Как сделать так, чтобы, если строка в текстовом файле содержала более 79 символов до \n
, она возвращала сообщение об ошибке?
У меня есть функция, которая читает файл прямо сейчас:
int lerficheiro(char texto[MAXLINHAS][MAXCARPORLINHA])
{
FILE * fp;
fp = fopen("tudomaiusculas.txt", "r");
if(fp==NULL)
{
printf("Erro ao abrir o ficheiro.");
return (-1);
}
while(!feof(fp))
{
for(int linha = 0; linha < MAXLINHAS; linha++)
{
fgets(texto[linha], MAXCARPORLINHA, fp);
}
}
fclose(fp);
for(int linha = 0; linha < MAXLINHAS; linha++)
{
for(int coluna = 0; coluna < MAXCARPORLINHA; coluna++)
{
if(texto[linha][coluna] >= 97 && texto[linha][coluna] <= 122)
{
printf("O ficheiro contem letras minusculas, a terminar.");
return (-1);
}
}
}
return (1);
}