您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> C/C++ >> putchar是函数还是宏?

putchar是函数还是宏?

来源:网络整理     时间:2016/7/13 8:06:09     关键词:

关于网友提出的“ putchar是函数还是宏?”问题疑问,本网通过在网上对“ putchar是函数还是宏?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: putchar是函数还是宏?
描述:

书上有句话:
putchar函数定义于stdio.h中,尽管它的内容比较长,但它是作为一个宏实现。
什么意思?


解决方案1:

最终是函数的,封皮是宏,

解决方案2:

引用 楼主 u013921360 的回复:
书上有句话:
putchar函数定义于stdio.h中,尽管它的内容比较长,但它是作为一个宏实现。
什么意思?

就是说我们用的时候都是宏的形式 解决方案3:

宏的版本
#define getchar()         getc(stdin)
#define putchar(_c)       putc((_c),stdout)
#define fgetc(_stream)     (--(_stream)->_cnt >= 0 \
                ? 0xff & *(_stream)->_ptr++ : _filbuf(_stream))
#define putc(_c,_stream)  (--(_stream)->_cnt >= 0 \
                ? 0xff & (*(_stream)->_ptr++ = (char)(_c)) :  _flsbuf((_c),(_stream)))
#define getc(_stream)    fgetc(_stream)

解决方案4:

http://stackoverflow.com/questions/16165672/are-getchar-and-putchar-functions-or-marcros

解决方案5:

lz可以看看这里——http://blog.csdn.net/tsaiyong_ahnselina/article/details/14209419

解决方案6:

引用 楼主 u013921360 的回复:
书上有句话:
putchar函数定义于stdio.h中,尽管它的内容比较长,但它是作为一个宏实现。
什么意思?

可以是函数,也可以是宏,如果你想调用函数版本,就如下这么写:
( putchar )( 'a ' );
以上介绍了“ putchar是函数还是宏?”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2582403.html

相关图片

相关文章