是形式()相当于scanf("c")和putchar()相当于printf("%c")?
题
是 a = getchar()
相当于 scanf("%c",&a);
?
是 putchar(a)
相当于 printf("%c",a);
哪里 a
是一个 char
变量?
解决方案
一般来说是的,他们都是相同的。
但他们不在几个报纸的方式。功能 getchar
是输入到回报 int
而不 char
.这样做的目的是, getchar
可以所有可能的 char
值和另外的错误代码。
因此,虽然以下高兴地汇编在大多数编纂者你本质上是截断走一条错误消息
char c = getchar();
功能 scanf
, 虽然允许使用 char
类型直接并分离出去的错误代码进入返回的价值。
其他提示
他们做同样的事情这里。然而,如果您知道您只是做字然后 getchar
和 putchar
将更加有效,因为 printf
和 scanf
变将具有分析串各个时间来确定如何处理您的请求。另外,他们可以称为在一个较低的水平图书馆的含义可能不必有 printf
/scanf
联如果他们不需要在其他地方。
不隶属于 StackOverflow