当前位置: 首页 > news >正文

58同城做网站的电话网络营销毕业论文范文

58同城做网站的电话,网络营销毕业论文范文,注册公司域名后如何做网站,网站模板可以自己做吗1.数据的存储和排列 是的,在C语言中,整数类型通常以补码(twos complement)形式存储在内存中。这是因为补码表示法在处理有符号整数的加减运算上更为简便和高效。 2.有符号数和无符号数之间的转换 在C语言中,有符号数和…

1.数据的存储和排列

 是的,在C语言中,整数类型通常以补码(two's complement)形式存储在内存中。这是因为补码表示法在处理有符号整数的加减运算上更为简便和高效。

 

2.有符号数和无符号数之间的转换

在C语言中,有符号数和无符号数之间的转换可以通过类型转换(type casting)实现。需要注意的是,这种转换会影响数值的解释。

有符号数转无符号数

将有符号数转换为无符号数时,二进制表示保持不变,但解释方式不同。

#include <stdio.h>int main(){int signed_num = -1;unsigned int unsigned_num = (unsigned int)signed_num; // 0xFFFFFFFFprintf("signed_num = %d, unsigned_num = %u\n", signed_num, unsigned_num);return 0;
} 

输出结果:

 

有符号数转无符号数在内存中的解释:

变量名内存地址二进制表示解释
signed_num0x7fffeeaee1011111111 11111111 11111111 11111111-1 (有符号数)
unsigned_num0x7fffeeaee1411111111 11111111 11111111 111111114294967295 (无符号数)

 可以看到二进制表示保持不变,只是改变了解释方式

无符号数转有符号数

将无符号数转换为有符号数时,同样二进制表示保持不变,但解释方式不同。

#include <stdio.h>int main(){unsigned int unsigned_num = 4294967295; // 0xFFFFFFFFint signed_num = (int)unsigned_num; // -1printf("unsigned_num = %u, signed_num = %d\n", unsigned_num, signed_num);return 0;
} 

 输出结果:

 

无符号数转有符号数在内存中的解释:

变量名内存地址二进制表示解释
unsigned_num0x7fffeeaee1811111111 11111111 11111111 111111114294967295 (无符号数)
signed_num0x7fffeeaee1c11111111 11111111 11111111 11111111-1 (有符号数)

 可以看到二进制表示保持不变,只是改变了解释方式

3.不同字长整数之间的转换

 

在C语言中,不同字长的整数之间的转换主要涉及位宽扩展和截断操作。

从小字长向大字长扩展

对于有符号数,可以通过符号扩展实现扩展;对于无符号数,可以通过零扩展实现扩展。

#include <stdio.h>int main(){char small_num = -1;int large_num = (int)small_num; // 符号扩展,小数到大数printf("small_num = %d, large_num = %d\n", small_num, large_num);unsigned char usmall_num = 255;unsigned int ularge_num = (unsigned int)usmall_num; // 零扩展printf("usmall_num = %u, ularge_num = %u\n", usmall_num, ularge_num);return 0;
} 

输出结果: 

 

从小字长向大字长扩展在内存中的解释:

变量名内存地址二进制表示解释
small_num0x7fffeeaee2011111111-1 (8位有符号数)
large_num0x7fffeeaee2411111111 11111111 11111111 11111111-1 (32位有符号数)
变量名内存地址二进制表示解释
usmall_num0x7fffeeaee2811111111255 (8位无符号数)
ularge_num0x7fffeeaee2c00000000 00000000 00000000 11111111255 (32位无符号数)

 对于有符号数,从小字长向大字长可以通过符号扩展实现扩展;

从大字长向小字长截断

当将大字长整数转换为小字长整数时,高位会被截断,只保留低位。

#include <stdio.h>int main(){int large_num = 257; // 0x00000101char small_num = (char)large_num; // 0x01printf("large_num = %d, small_num = %d\n", large_num, small_num);unsigned int ularge_num = 65537; // 0x00010001unsigned char usmall_num = (unsigned char)ularge_num; // 0x01printf("ularge_num = %u, usmall_num = %u\n", ularge_num, usmall_num);return 0;
} 

 输出结果:

 大字长到小字长整数之间的转换在内存中的解释:

数据类型变量名内存地址示例二进制表示解释
intlarge_num2570x701000000000 00000000 00000001 00000001257
charsmall_num10x7000000000011(截断)
unsigned intularge_num655370x701400000000 00000001 00000000 0000000165537
unsigned charusmall_num10x7008000000011(截断)

可以看到 大字长到小字长整数之间的转换在是直接截去多余的高位,只保留对应得低位。

http://www.bjxfkj.com.cn/article/102691.html

相关文章:

  • 沈阳市铁西区建设局网站seo网站推广主要目的不包括
  • 怎么部署自己的网站湘潭网站定制
  • 网站建设难做吗网络营销的核心是什么
  • 做情侣网站网络营销策略包括哪些
  • 企业网站源码带支付上海专业做网站
  • 关于做网站常见的问题北京口碑最好的it培训机构
  • 湘潭seo优化价格天津抖音seo
  • 建设网站的安全性介绍阿里云com域名注册
  • 网站建设公司利润怎么样新乡网络推广外包
  • 怎么用PS做珠宝网站百度seo搜索营销新视角
  • 成品网站软件大全下载营销网站建设哪家好
  • 制作网站网页设计市场推广策略 包括哪些
  • 直播秀场网站开发企业邮箱如何申请注册
  • 自己做的网站可以有多个前端吗凡科网免费建站
  • 备案网站用户名是什么seo常用优化技巧
  • 一条龙做网站做电商一个月能挣多少钱
  • 番禺外贸网站建设网络营销活动策划方案
  • 英文域名在哪个网站查询武汉seo推广
  • 个人建网站一般多少钱线上平台推广方式
  • 北京网站建设招聘seo是什么的缩写
  • 青岛哪里有做网站的怎么自己创建一个网页
  • 在哪里找人做公司网站企业网络
  • 做译员的网站aso优化平台有哪些
  • 龙江手机网站建设常用的关键词有哪些
  • 怎样用dw做网站导航条搜索引擎优化是什么意思
  • 永辉企业微信app下载安装优化网站哪个好
  • wordpress 获取logo中山seo排名
  • 南京网站建设流程班级优化大师官方免费下载
  • ecs怎么做网站杭州seo推广排名稳定
  • 河西网站建设优化seo网站推广策略有哪些