Macos 程序接收到来自GDB的信号:EXC_坏访问

Macos 程序接收到来自GDB的信号:EXC_坏访问,macos,gdb,Macos,Gdb,嗯,我开始在MacOSX上开发这段代码,你会在我买的一本书中看到,非常基本,就像第3章。而我不能运行它。请帮助我: C301.m: #import <Foundation/Foundation.h> int main (int argc, const char * argv[]) { if (argc == 1) { NSLog (@"You need to provide a file name"); return -1; } FILE *wordFile = f

嗯,我开始在MacOSX上开发这段代码,你会在我买的一本书中看到,非常基本,就像第3章。而我不能运行它。请帮助我:

C301.m:

#import <Foundation/Foundation.h>

int main (int argc, const char * argv[]) {
 if (argc == 1) {
  NSLog (@"You need to provide a file name");
  return -1;
 }
 FILE  *wordFile = fopen("tmp/words.txt", "r");
 char word[100];
 while (fgets(word, 100, wordFile)) {
  word[strlen(word) - 1] = '\0';
  NSLog(@"%s is %d characters long", word, strlen(word));
 }
 fclose(wordFile);
    return 0;
} //main
#导入
int main(int argc,const char*argv[]{
如果(argc==1){
NSLog(@“您需要提供一个文件名”);
返回-1;
}
FILE*wordFile=fopen(“tmp/words.txt”、“r”);
字符字[100];
while(fgets(word、100、wordFile)){
单词[strlen(word)-1]='\0';
NSLog(@“%s”长度为%d个字符),word,strlen(word));
}
fclose(wordFile);
返回0;
}//主要
文件已就位


非常感谢你

我猜
wordFile
是空的(你应该检查一下);您弄错了:文件实际上不存在,最后您真正的意思是
“/tmp/words.txt”
,而不是
“tmp/words.txt”