gpt4 book ai didi

c - 为什么 fputs() 需要一个常量作为第一个参数而不是 fputc()?

转载 作者:太空宇宙 更新时间:2023-11-04 05:15:54 24 4
gpt4 key购买 nike

int fputc(int c, FILE *stream);

int fputs(const char *s, FILE *stream);

为什么在 fputc() 的声明中不需要 const int c

最佳答案

在函数声明中将参数标记为 const 没有意义。参数按值传递,因此参数无论如何都是一个副本。它不会影响函数的调用方式。

但是,const char *s 并不意味着sconst。这个声明的意思是 s 是一个指向 const char 的指针;即 fputs 函数 promise 不会通过给定的指针进行写入。此外,还有从 char *const char * 的隐式转换(反之亦然),这意味着可以同时调用 fputs只读和可写字符串。

关于c - 为什么 fputs() 需要一个常量作为第一个参数而不是 fputc()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57273744/

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