所以我的程序是计算文本文件中单词的频率。文本文件将被分区为n个部分,并使用n个线程来计算每个部分的单词频率。 假设文本文件仅包含字母和空格,大写字母与小写字母相同。
文本文件的一个例子是
这是一个文本文件,其中包含一到十个数字,有些数字低于其他数字,例如一个低于两个
我的问题是当使用fseek和fread读取文本文件的一部分时,它无法正常读取。 我使用开始指示从哪个位置开始阅读,结束表示要读取的字节数。 虽然我检查了开始和结束,但我得到的字符串不正确。
例如,
从0到48,字符串是'这是一个包含一些数字的文本文件'
从48到92,字符串是从1到10,有些数字低于'
从92到139,字符串是'这是一个包含一些数字的文本文件'
此外,从thread_exit()返回的变量似乎也不正确。 我做了一个检查,我从 wordFreq 获得的单词和频率与我从thread_exit(), myfreqword
例如,这是我从每个线程的wordFreq得到的
1
包含1
是1
档案1
为1
从1
是1
是1
降低1
数字1
降低1
数字1
一些
数字1
一个1
text 1
一个1
一些
这1
其他1
十一
其中1
这样的1
比1
比1
到1
这是我从thread_exit()返回后得到的,这里有一些奇怪的字符串。
1
1
两个1
包含1
数字1
一些
其中1
是1
从1
降低1
数字1
一个1
一些
十一
比1
到1
是! 1
? 1
??? 1
tw 1
我不知道这里出了什么问题。