博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
char类型是否有符号与不同编译环境相关
阅读量:7251 次
发布时间:2019-06-29

本文共 378 字,大约阅读时间需要 1 分钟。

hot3.png

在跨平台的c/c++程序编程时需要注意,根据c++标准,char类型既可以是signed的,也可以是unsigned的;最近就碰到了这样的情况:
在linux arm平台上,编译出来的程序char类型为unsigned的,而在x86编译则是signed的,最终引起了一段处理序列号的代码在不同平台下行为不一致。
解决办法:
对gcc编译器,使用--fsigned-char选项,可以保证编译时char是signed的。
对msvc编译器,char是signed的,如果想把char默认编译成unsigned,可以用/J选项来指定,详见:http://msdn2.microsoft.com/zh-cn/library/0d294k5z(VS.80).aspx

转载于:https://my.oschina.net/jonas1q84/blog/112100

你可能感兴趣的文章
Subversion+Apache 安装配置文档
查看>>
从程序员到技术领导者
查看>>
squid的配置及应用
查看>>
Linux的基本配置
查看>>
java语言基础
查看>>
通过weblogic自带脚本正常关闭受管理服务器方法
查看>>
关于最近很火的安卓stagefright漏洞
查看>>
iOS开发那些事-iOS网络编程同步GET方法请求编程
查看>>
pycharm,vim,items2常用快捷键
查看>>
Flask blueprint蓝图按功能模块化架构实例
查看>>
数据支撑环境的改造
查看>>
ifconfig 命令用来查看和配置网络设备
查看>>
用 netstat 查看 TCP 网络状态详解
查看>>
JVM 调优总结:一些概念
查看>>
HTML5:使用Lawnchair库存储JSON
查看>>
如何设计秒杀系统
查看>>
屏蔽USB设备的几种方法
查看>>
zen cart 特价商品列表页中加入排序选择
查看>>
配置Pycharm4.5.4调试edX Devstack
查看>>
Nginx+Tomcat负载均衡配置
查看>>