【发布时间】:2012-09-16 12:12:15
【问题描述】:
我对 C 语言还是很陌生。我仍然完全不了解指针的所有内容。 我正在尝试创建一个返回字符串的方法。 函数就到这里了,还不完整。
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 = " ";
//insert getting a random word here
return(*get);
}
我正在尝试这样调用方法
char *article = getS("articles.txt");
char *noun = getS("nouns.txt");
char *verb = getS("verbs.txt");
编译器给了我这个:
error: invalid type argument of unary ‘*’ (have ‘int’)
我该怎么办?
【问题讨论】:
-
这完全取决于您的字符串是否具有恒定大小...无论如何,它是
char *您期望函数的返回类型。 -
它给你的是哪个声明?请始终包含此类详细信息,以获得更好的答案。
标签: c string function pointers methods