系统移植,printf的有关问题.路过有分
系统移植,printf的问题.路过有分
手上有个移植工作
在代中使用例如 printf( "%04s ", "abc ");
在Win AIX ScoUnix下均输出 "0abc "
在红帽Linux下输出 " abc "
请问如何让Linux保持和Win AIX ScoUnix系统一致?
谢谢!
------解决方案--------------------
使用#define宏
------解决方案--------------------
可能是不同版本的libc中printf处理格式化字符串的方式不同吧。找个开源的libc(好像有个伯克利版本的)参考一下自己写个printf,不难,记得最终都是调用putc之类的。
------解决方案--------------------
嘿嘿,偷懒的工作,只把s%改了,最好其他格式没有不一致的地方了。
手上有个移植工作
在代中使用例如 printf( "%04s ", "abc ");
在Win AIX ScoUnix下均输出 "0abc "
在红帽Linux下输出 " abc "
请问如何让Linux保持和Win AIX ScoUnix系统一致?
谢谢!
------解决方案--------------------
使用#define宏
------解决方案--------------------
可能是不同版本的libc中printf处理格式化字符串的方式不同吧。找个开源的libc(好像有个伯克利版本的)参考一下自己写个printf,不难,记得最终都是调用putc之类的。
------解决方案--------------------
嘿嘿,偷懒的工作,只把s%改了,最好其他格式没有不一致的地方了。