2011-02-28 42 views
1

爲了打印出文件中的某些內容,我有以下代碼。初始化放棄objective-c/cocoa中指針目標類型錯誤的限定符錯誤

FILE *fp = fopen(cString, "w+"); 
NSString* message = [NSString stringWithFormat:@":SLEEP: %@:%@\n", ...]; 
char* cMessage = [message UTF8String]; <-- warning 
fprintf(fp, cMessage); <-- warning 
fclose(fp); 

但是,我得到了char* cMessageInitialization discards qualifiers from pointer target type errorFormat not a string literal and no format argument警告。

代碼有什麼問題?

+0

我建議切換您的Xcode構建設置到鐺,因爲它提供了更明確的警告和錯誤消息。 – 2011-02-28 07:46:06

回答

6

-UTF8String返回const char *,但您將其分配到char *。因此,您將丟棄const限定符。

至於fprintf,你應該做:

fprintf(fp, "%s", cMessage); 
相關問題