全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言中关于地址作返回值以及printf的缓冲刷新问题程序源码:#includechar * itoa(unsigned int count)char s32;char *t;char hex = 0123456789ABCDEF;int i,j=0,length = 0;char tmp;t = s;while(count)i = count % 10;sj = hexi;j+;count = count /10;sj = 0;while(*t)t+;length+;t-;for(i = 0 ;i length /2;i+)/printf(%c=%d=%cn,si,i,*t);tmp = si;si = *t;*t = tmp;t-;t = s;printf(%sn%sn,t,s);return t;int main()unsigned int i = 12345;char * sh = itoa(i);printf(%s,sh);以上代码是整形转化成字符型,不要问我为什么不用c库函数,因为我写的是裸机用的,不要问我为什么不申请堆,因为我写的是裸机用的。好上述代码的思想上是没有问题的,就是通过不断除以10取余数进行赋值,然后进行字符串的倒序。最终完成了指针t或者s,返回,调用,打印。下面是结果:意思是说调用之前可以打印,说明字符指针是创建对了,但是调用的时候出现乱码,于是笔者进行了各种常识。最终找到错误所在。分析如下:子函数被调用的时候,在子函数的局部变量会在函数执行之后被销毁。所以返回值是没有的。所以不会打印东西。但是为什么还能打印一部分呢?这就涉及到另一个问题:printf的缓冲刷新问题。看下面两个程序:程序1:Int main()Printf(“aaa”);While(1);程序2:Int main()Printf(“aaan”);While(1);两个程序执行结果不同,第一个没有打印aaa,第二个打印了aaaprintf只有当缓冲区满
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全原则大全讲解
- 生产安全目标口号集讲解
- 2025年河北省涿州市辅警招聘考试试题题库及参考答案详解(夺分金卷)
- 2025年重症护理常规试题及答案
- 2025年初级消防理论试题及答案
- 2025年高中数学高二下册期末试题及答案
- 2025年新交规考试题库(含答案)
- 福建农信考试真题(2篇)
- 2025年江西工商职业技术学院单招职业倾向性考试题库含答案详解名师推
- 2025年全国社会工作者职业水平考试中级《综合能力》试题(附答案)
- 广东省新能源汽车出口竞争力问题提升策略研究
- 2024版中国高血压防治指南(完整版)
- 新公司法知识竞赛题库与参考答案
- 备战2026年高考化学三年(2023-2025)真题汇编(通.用版)专题12工艺流程综合题(原卷版)
- DB11∕T 2330-2024 行业协会商会诚信建设规范
- 红军在贵州的足迹课件
- 办理《出生医学证明》授权委托书
- 《高等教育学》课件
- 人教版信息技术七上《计算机的硬件组成》听评课记录
- 2025年医院检验科人员招聘考试题目及答案
- 绵竹市属国有企业招聘考试真题2024
评论
0/150
提交评论