找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1777|回复: 4
收起左侧

C语言unsigned char a[5] 数组内5个值有负数,仙人请指路

[复制链接]
ID:241249 发表于 2019-5-16 14:28 来自手机 | 显示全部楼层 |阅读模式
请问如果是unsigned char型数组,赋值却赋了负数,然后比较大小,请问数组内元素如何排序的
比如数组元素是4 ,6, 8, -2 ,-9
还有如果换成signed char型 这个数组排列大小的顺序是怎样的,排序后是864-2-9么
我找了很久都没有相关资料,请指教
回复

使用道具 举报

ID:123289 发表于 2019-5-17 10:56 | 显示全部楼层
标准的定义“-”是首位是1,你想想“-1”是如何写的。
回复

使用道具 举报

ID:282850 发表于 2019-5-17 17:13 | 显示全部楼层
unsigned char比较大小时,如果输入有-2、-9,会把负数当成正数来比较的,也就是-2为127+2,-9为127+9,最终谁大谁小就明白了,"负数远远大于正数"。如果是signed char比较大小,则负数比正数小。
回复

使用道具 举报

ID:424408 发表于 2019-5-17 20:04 | 显示全部楼层
yzwzfyz 发表于 2019-5-17 10:56
标准的定义“-”是首位是1,你想想“-1”是如何写的。

  支       持
回复

使用道具 举报

ID:241249 发表于 2019-5-20 23:23 来自手机 | 显示全部楼层
f556 发表于 2019-5-17 17:13
unsigned char比较大小时,如果输入有-2、-9,会把负数当成正数来比较的,也就是-2为127+2,-9为127+9,最 ...

谢谢 非常直白 谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表