【发布时间】:2019-07-20 22:14:16
【问题描述】:
为什么我不能这样做?
fopen("%s",stringarray,fpointer);
上面返回一个错误,说明函数参数太多。
但这行得通,
fopen("file.txt",fpointer);
我怎样才能解决这个问题?是不是必须修改代码中的headers?
【问题讨论】:
-
stringarray是什么类型? -
char 字符串数组 [32];
-
这里似乎对 C 函数的一般工作方式存在一些误解。您是否知道
printf()(与"%s"一起工作的那个)非常特别,并且并非所有函数都这样工作?你为什么要首先打电话给fopen("%s", stringarray, fpointer)?您想在这里实现什么目标? -
用户输入要创建的文件名的程序
-
printf 样式格式说明符不是语言的固有部分,格式字符串在运行时由函数本身解析,而不是由编译器解析。它们用于格式化输出或输入;将一种形式的数据转换为presentation的字符串表示或从字符串表示转换。这在这里完全无关紧要。你不需要“绕过这个问题”,因为没有问题,除了你对一些基本概念的理解。
标签: c gcc compiler-errors fopen