当前位置:  技术问答>linux和unix

系统移植,printf的问题.路过有分

    来源: 互联网  发布时间:2016-01-12

    本文导语:  手上有个移植工作 在代中使用例如 printf("%04s", "abc"); 在Win AIX ScoUnix下均输出 "0abc" 在红帽Linux下输出 " abc" 请问如何让Linux保持和Win AIX ScoUnix系统一致? 谢谢! 有牛人说 好像gcc有个编译开关的,谁知道? | ...

手上有个移植工作

在代中使用例如 printf("%04s", "abc");

在Win AIX ScoUnix下均输出 "0abc"
在红帽Linux下输出 " abc"

请问如何让Linux保持和Win AIX ScoUnix系统一致?

谢谢!

有牛人说 好像gcc有个编译开关的,谁知道?

|
http://blog.tianya.cn/blogger/post_show.asp?idWriter=0&Key=0&BlogID=462085&PostID=8363874


看看上面这个对你有帮助不?

|
你写的复杂了。最简单的方法,就用%s打印到buffer里。strlen比较,前面的补0.
还有为什么前面一定要是0, 用"%4s"前面补空格不一样的马?

还有谁说的#ifdef预编译最土? 有什么“不土“的方法可以替代#ifdef?

|
跟编译器应该无关吧。编译器最多给个warning。应该是libc的问题。

man printf

       0      The  value should be zero padded.  For d, i, o, u, x, X, a, A,
              e, E, f, F, g, and  G  conversions,  the  converted  value  is
              padded  on  the  left with zeros rather than blanks.  If the 0
              and - flags both appear, the 0 flag is ignored.  If  a  preci-
              sion  is  given  with a numeric conversion (d, i, o, u, x, and
              X), the 0 flag is ignored.  For other conversions, the  behav-
              ior is undefined.

没有对s的支持。最好的方法,别用%0s. 大不了用sprintf打印到buffer里改把改把再打。

|
只写符合ANSI标准的c代码.

|
俺仅仅路过,能不能用最土的预编译解决呀
#ifdef 
#else
#endif

|
应该可以用sprintf到buffer中,再进行输出

    
 
 

您可能感兴趣的文章:

  • 请大家帮忙提供资料:如何将windows系统服务程序移植为linux系统服务?
  • UNIX系统下的C程序移植到Linux系统的问题
  • 中文问题:我使用的是MEPIS Linux,系统不能显示中文,我能不能把Redhat中的中文字体移植到这个系统中?
  • 系统移植用英语怎么说
  • 基于skyeye的ucosii系统的移植
  • 涉及到系统头文件的库移植问题
  • 系统移植的时候遇到了困难
  • 系统移植,让程序拷过去就可以用
  • 系统移植:从IBM到HP???
  • 关于从Redhat 上移植程序到嵌入式是系统上的问题
  • 如何将linux中部分代码移植到非操作系统中
  • 为什么ARM下linux移植那么多,但是手机却没有用linux操作系统?
  • 把Win平台的服务端移植到Linux,开发测试用哪个系统比较好?
  • 我在windows下把1.c编译成1.exe可以执行,请问我把1.exe拷贝到unix系统能否执行?怎样移植?
  • 关于系统移植出现的问题hp-unix->linux
  • 关于Mozilla向嵌入式系统移植的问题
  • 不安装ORACLE客户端的系统移植方法
  • 一般单片机的系统是linux的什么版本?是怎样移植进去的?
  • 请教 文件系统/proc移植
  • busybox移植的根文件系统,为什么/dev下没有eth0设备?
  • 在线交友聊天系统 路过的
  • settimeofday系统调用只是修改了系统时间?!没写进硬件?重启后时间还是1970怎么办??感谢路过的大神指点
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • mount命令(linux操作系统)挂载卸载文件系统(cifs,光驱,nfs等)方法介绍
  • 问一个系统配置的问题:win2k系统能不能于SCO UNIX系统共存?
  • win7/Windows7系统下载地址搜集整理
  • unix下用java.util.Date取系统时间比直接在系统下用date命令查看系统时间早整整一个小时
  • Ubuntu查看系统信息命令介绍
  • windows 系统是否是多用户操作系统,如何理解“多用户操作系统”的“多用户”?
  • python下用os.execl执行centos下的系统时间同步命令ntpdate
  • 我现在想做一个权限管理系统,想让权限系统的利用性更强,我应该怎样设计权限系统呢.
  • 怎样重装win7系统?win7重装系统步骤详细图文介绍
  • 谁知道哪里有用java开发的管理信息系统软件(如:图书馆管理系统,人事部管理系统)的代码?
  • windows server2008上PowerBuilder程序系统错误解决方法
  • 原来已安装好ubuntu,因系统崩溃,重装WINXP系统,如何再次登录ubuntu系统?
  • Ubuntu系统安装及升级命令
  • Linux(Oracle系统在上面)系统无缘无故死机 , 可能是由于应用程序引起 , 可是由于重新启动查不到相关信息 , 不知道在哪里有记录系统CPU Lo
  • 安装运行微软win7/Windows7系统要求及官方下载地址
  • UNIX系统下,进程写文件,写了很大量的文件,但是进程被KILL -9杀掉,系统可以保证写缓冲上的文件写到系统吗?
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • LINUX系统怎么记录飞鱼星VE982G系统日志
  • Linux内存文件系统(ramdisk)的三种实现方式
  • pipe是什么样的文件系统?是独立的文件系统吗?
  • linux内存文件系统ramfs实现原理
  • MINIX3 系统如何添加系统调用


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3