我知道如果我想使用root
,则应使用此格式fopen_s
。
但如果我想自定义文件名,我该怎么办?
我已经尝试了fopen_s(*file,"name.txt","w")
fopen_s(*file,str,"w")
str
,但它只显示了HELP并且没有创建任何文件。有人能帮助我吗?谢谢!
这是我的代码:
"file.txt"
答案 0 :(得分:-1)
阅读fgets
的内容:
fgets() reads in at most one less than size characters from stream and stores them into the buffer pointed to by s. Reading stops after an EOF or a newline. If a newline is read, it is stored into the buffer. A terminating null byte (aq\0aq) is stored after the last character in the buffer.
您需要打印所得到的内容以确保您传递的内容是有效的文件名(例如,不应该有\n
)
解决这些问题的一个好方法是通过为str
分配内容以确保代码的其余部分正常工作然后继续并尝试包含来自STDIN
的读取来开始。
另一个有用的事情是检查errno
返回的fopen_s
,这会让您知道发生了什么。