Мне нужна помощь с программой, которую я пишу для своего класса по системному программированию. Это на C, и у меня очень и очень небольшой опыт работы с C. Мне нужно объединить три текстовых файла в формате:
word1
word2
word3
...
wordX
Я также собираю каждое слово из всех трех файлов и помещаю их в двумерный массив (массив строковых массивов), а затем использую какой-то метод сортировки для них.
Мне не нужна помощь в сортировке, но я не знаю, как узнать количество слов в каждом из текстовых файлов или поместить их в массив.
Это функция, которая у меня есть для подсчета слов в файле. Он не компилируется в gcc (возможно, по понятным причинам, но я их не знаю). У меня даже есть правильная идея?
int countWords(FILE f){
int count = 0;
char ch;
while ((ch = fgetc(f)) != EOF){
if (ch == '\n')
count++;
//return count; originally here, but shouldn't be.
}
return count;
}
РЕДАКТИРОВАТЬ: Я предположил, что я мог бы просто найти способ подсчета строк в программе, но я не уверен, будет ли подход отличается от того, что я пытаюсь сделать здесь. (Я никогда не был так хорош в работе с текстовыми файлами.
Святая корова. Я получил это, чтобы посчитать все строки в программе. Я думаю, что я немного ржавый: P
#include <stdlib.h>
#include <stdio.h>
int countWords(FILE *f){
int count = 0;
char ch;
while ((ch = fgetc(f)) != EOF){
if (ch == '\n')
count++;
}
return count;
}
int main(void){
int wordCount = 0;
FILE *rFile = fopen("american0.txt", "r");
wordCount += countWords(rFile);
printf("%d", wordCount);
return 0;
}
Я как-то забыл об этом указателе с FILE * fileName
Спасибо за помощь, ребята.