だから私は、新しい行にある単語のテキストファイルの行数を取得しようとしています。私はこれまでこの方法を持っていました...
char * getS(char *fileName){
FILE *src;
if((src = fopen(fileName, "r")) == NULL){
printf("%s %s %s", "Cannot open file ", fileName, ". The program is now ending.");
exit(-1);
}
char *get = ".";
int c = 0;
char ch = 'x';
while(ch!=EOF) {
ch = fgetc(src);
if(ch == '\n') c++;
}
fseek(src, 0, SEEK_SET);
printf("%i",c);
int random = rand() % (c - 1);
return get;
}
何らかの理由で ch の printf を途中に置くと、正しい行数が得られますが、それ以外の場合は 7801729 になります。
また、0から行数までのランダムなintを作成するにはどうすればよいですか? C で random を使用するという概念は、今のところ私にとってかなり不可解です。
前もって感謝します!