csthh 2023-12-19 09:37 采纳率: 62.5%
浏览 68

文件操作报错Invalid argument

img


这样子为啥会报Invalid argument的错误啊?目录里面也有我的文件啊,应该怎么改?

  • 写回答

1条回答 默认 最新

  • ꧁★听听★꧂ 2023-12-19 09:41
    关注

    在 C 语言中,"Invalid argument" 这个错误通常发生在调用系统函数或库函数时,传入的参数不符合函数要求的参数类型、值范围或参数个数。
    在你的代码中,fopenfscanf 的参数看起来都是正确的,所以 "Invalid argument" 的错误可能不是由这两个函数引起的。
    但是,你代码中的 perror("no"); 可能会导致问题。perror 函数需要一个字符串参数,表示错误信息的描述。它会在该字符串后面加上一个冒号和当前errno值的错误描述。如果你传入一个 NULL 字符串或者未经初始化的字符串,perror 函数可能会报错。
    在你的代码中,perror("no"); 的 "no" 字符串看起来并没有被初始化,可能会导致 "Invalid argument" 的错误。你可以尝试将其改为一个已初始化的字符串,如 "no"
    如果问题仍然存在,那么可能需要更多的上下文信息来确定错误的具体原因。例如,你可以尝试在 fopenfscanf 调用之前打印出相关的参数值,以便检查是否传入的参数值有问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 12月19日