scanf函数的语法是int scanf(const char * format,...); printf函数的语法也是int printf(const char * format,...);
为什么我们在这里有一个指向常量的指针,为什么我们在这里指定了变量参数,它的用途是什么?
格式说明符中的 const 保证库永远不会更改格式字符串指向的内容 .
const
指向 format 的指针是函数的输入数据,不应该更改 . 因此它是常量 . 此外,根据功能,参数可以是输入或输出,也可以是const或不是其性质 . 但是由于函数是可变参数,因此它们未被指定,并且分别没有const或非const说明符 . printf是一个out-function,因此它希望其余的参数都是in-parameters和 format ,因此也就是const . scanf - 是一个函数,因此它写入 format 后面的其余参数,因此它们必须是可写的 .
format
2 回答
格式说明符中的
const
保证库永远不会更改格式字符串指向的内容 .指向
format
的指针是函数的输入数据,不应该更改 . 因此它是常量 . 此外,根据功能,参数可以是输入或输出,也可以是const或不是其性质 . 但是由于函数是可变参数,因此它们未被指定,并且分别没有const或非const说明符 . printf是一个out-function,因此它希望其余的参数都是in-parameters和format
,因此也就是const . scanf - 是一个函数,因此它写入format
后面的其余参数,因此它们必须是可写的 .