gpt4 book ai didi

C:警告:格式 '%s' 需要匹配的 'char *' 参数

转载 作者:行者123 更新时间:2023-11-30 15:44:50 26 4
gpt4 key购买 nike

我目前正在研究文件 I/O,并尝试使用此函数:

fprintf (FILE *pFile, char *pFormat, <variable list>);

用我的变量

fprintf ( filePtr, "\"%s\"n", myarray );

我的编译器发出警告,显示警告:格式“%s”需要匹配的“char *”参数,但我已将 myarray 声明为 char * myarray =“这是一个字符串”。谁能告诉我出了什么问题吗?我的代码是:

#include <stdio.h>
int main ()
{
FILE *filePtr;
char *myarray = "This is a string";

if ((filePtr = fopen("sample.dat", "w")) == NULL) {
printf ("File could not be opened.\n");
} else {
printf ("This will print the string onto file:\n");

while (!feof(filePtr)) {
fprintf ( filePtr, "\"%s\"", myarray );
}
}
fclose (filePtr);
return 0;
}

最佳答案

我尝试用 gcc 编译,它发现了另一个问题 - fopen 中缺少参数:

 if ((filePtr = fopen("sample.dat")) == NULL) {

所以,需要使用:

 if ((filePtr = fopen("sample.dat", "r")) == NULL) {

此后,代码编译没有问题。编译器版本:

gcc version 4.2.1 20070831 patched [FreeBSD]

关于C:警告:格式 '%s' 需要匹配的 'char *' 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19317090/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com