我最接近的现成解决方案是将整数转换为strfromd(3)的双精度浮点,格式字符串不打印小数点.
bhuwansahni在How to convert integer to string in C?年给出了一个很好的自己动手解决方案
我没有看到如何使用(链接不起作用)itoa,_itoa或_fitoa_word,尽管_fitoa_word确实显示为nm /lib64/libc6.so.6的函数.
解决方法 即使您不包含stdio.h,它们也会打开.它们是程序的标准流,并在运行时打开.程序在实际执行之前需要进行一些初始化.这包括加载符号表,分配内存,初始化静态数据和链接动态库等.此时打开标准流.然后控件转到程序中的main()函数并开始执行.
对于第二个问题,标准IO不会使程序膨胀,因为您的程序几乎总是与标准C库libc链接,并且通常是动态链接的(因此它不会增加可执行文件的大小).
是的,如果你不使用它们就没问题.只使用像snprintf()这样的东西,你可以做得很好,但仍然会打开标准流.使用它们与否并不重要.
谢谢Paul OgilvIE
总结以上是内存溢出为你收集整理的stdio文件描述符(stdin,stdout,stderr)是否只能从#include中打开?全部内容,希望文章能够帮你解决stdio文件描述符(stdin,stdout,stderr)是否只能从#include中打开?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)