C语言:截断+整型提升练习
详情关于整型提升与截断见文章:《C语言:整型提升》
一、代码一
int main()
{
char a = -1;
signed char b = -1;
unsigned char c = -1;printf("%d %d %d", a, b, c);
return 0;
}求输出结果
解析如下代码:
int main()
{char a = -1;//10000000 00000000 00000000 00000001原//11111111111111111111111111111111111补//11111111截断补(首位作符号位)//11111111111111111111111111111111111整型提升补//10000000 00000000 00000000 00000001整型提升原signed char b = -1;//10000000 00000000 00000000 00000001原//11111111111111111111111111111111111补//11111111截断补(首位作符号位)//11111111111111111111111111111111111整型提升补//10000000 00000000 00000000 00000001整型提升原unsigned char c = -1;//10000000 00000000 00000000 00000001原//11111111111111111111111111111111111补//11111111截断补(首位作普通位)//11111111111111111111111111111111111整型提升补//000000000000000000000000000011111111整型提升原printf("%d %d %d", a, b, c);//-1 -1 255return 0;
}
二、代码二
int main()
{
char a = -128;printf("%u\n", a);
return 0;
}求输出结果
解析如下代码:
int main()
{char a = -128;//10000000 00000000 00000000 10000000原//11111111 11111111 11111111 10000000补//10000000截断补(首位作为符号位)//%u是打印十进制无符号数//11111111 11111111 11111111 10000000整型提升补(先整型提升,最高位补符号位)//11111111 11111111 11111111 10000000改无符号数补//11111111 11111111 11111111 10000000改无符号数原printf("%u\n", a);//4,294,967,168return 0;
}
三、代码三
int main()
{
char a = 128;
printf("%u\n", a);
return 0;
}求输出结果
解析如下代码:
int main()
{char a = 128;//00000000 00000000 00000000 10000000原//00000000 00000000 00000000 10000000补//10000000截断补(首位作为符号位)//%u是打印十进制无符号数//11111111 11111111 11111111 10000000整型提升补(最高位补符号位)//11111111 11111111 11111111 10000000改无符号数补//11111111 11111111 11111111 10000000改无符号数原printf("%u\n", a);//4,294,967,168return 0;
}
四、代码四
int main()
{
int i = -20;
unsigned int j = 10;
printf("%d", i + j);return 0;
}求输出结果
解析如下代码:
int main()
{int i = -20;//10000000 00000000 00000000 00010100原//11111111 11111111 11111111 11101100补//11111111 11111111 11111111 11101100算数转换补(符号位当做普通位)unsigned int j = 10;//00000000 00000000 00000000 00001010原//00000000 00000000 00000000 00001010补//i+j//11111111 11111111 11111111 11101100(i算数转换后的补码)//00000000 00000000 00000000 00001010(j补码)//11111111 11111111 11111111 11110110(i+j后的补码)无符号数//%d是打印十进制有符号数//11111111 11111111 11111111 11110110(i+j后的补码)改有符号数//10000000 00000000 00000000 00001010(i+j改有符号数后的原码)printf("%d", i + j);//-10return 0;
}
相关文章:
C语言:截断+整型提升练习
详情关于整型提升与截断见文章:《C语言:整型提升》 一、代码一 int main() { char a -1; signed char b -1; unsigned char c -1; printf("%d %d %d", a, b, c); return 0; } 求输出结果 解析如下代码: int mai…...
Kubernetes技术--k8s核心技术kubectl命令行工具
(1).概述 kubectl是Kubernetes集群的命令行工具,通过 kubectl 能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署。 (2).语法 Kubectl [command] [type] [name] [flags] 语法参数说明: command: 指定要对资源执行的操作,例如 create、get、describe 和 delet…...
Element浅尝辄止9:Popover 弹出框组件
Popover 的属性与 Tooltip 很类似,它们都是基于Vue-popper开发的,因此有重复属性 1.如何使用? /*trigger属性用于设置何时触发 Popover,支持四种触发方式: hover,click,focus 和 manual。 对于…...
程序开发:构建功能强大的应用的艺术
程序开发是在今天的数字化时代中扮演重要角色的一项技术。通过编写代码,开发人员能创造出无数不同的应用,从简单的计算器到复杂的社交平台。电子商务应用、在线教育平台、医疗记录系统等,都重视程序开发的重要性,通过这其中的交互…...
(七)k8s实战-高级调度
一、CronJob 定时任务 1、cron 表达式 # ┌───────────── 分钟 (0 - 59) # │ ┌───────────── 小时 (0 - 23) # │ │ ┌───────────── 月的某天 (1 - 31) # │ │ │ ┌───────────── 月份 (1 - 12) # │ │ │ │ ┌…...
HTTP/1.1协议中的八种请求
2023年8月29日,周二晚上 目录 概述八种请求GET请求POST请求PUT请求PATCH请求DELETE请求HEAD请求OPTIONS请求TRACE请求 概述八种请求 HTTP/1.1协议中定义了8种常用的请求方法,分别是:1. GET 用途:请求指定的页面信息,并返回实体主体。例子:获取一个网页、图片等静态…...
面试系列 - JVM内存模型和调优详解
目录 一、JVM内存模型 1. 程序计数器(Program Counter Register): 2.Java虚拟机栈(Java Virtual Machine Stacks): 3. 本地方法栈(Native Method Stack): 5. 方法区…...
JavaScript -【第一周】
文章来源于网上收集和自己原创,若侵害到您的权利,请您及时联系并删除~~~ JavaScript 介绍 变量、常量、数据类型、运算符等基础概念 能够实现数据类型的转换,结合四则运算体会如何编程。 体会现实世界中的事物与计算机的关系理解什么是数据并…...
高性能缓存 Caffeine 原理及实战
Caffeine 是基于Java 8 开发的、提供了近乎最佳命中率的高性能本地缓存组件,Spring5 开始不再支持 Guava Cache,改为使用 Caffeine。 1 算法原理 对于 Java 进程内缓存我们可以通过 HashMap 来实现。不过,Java 进程内存是有限的,…...
【算法】leetcode 105 从前序与中序遍历序列构造二叉树
题目 输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节点。 假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 示例 1: Input: preorder [3,9,20,15,7], inorder [9,3,15,20,7] Output: [3,9,20,null,null,15,7]示例 2: Input: pr…...
11 | Spark计算数据文件中每行数值的平均值
需求:计算数据文件中的数值的平均值 背景: 你有一个数据文件,其中包含一系列数值,每行一个数值,数值之间用逗号分隔。你想使用Apache Spark分布式计算框架来读取数据文件中的数值并计算它们的平均值。功能要求: 通过Spark配置和上下文初始化Spark应用程序。从数据文件中…...
AI与游戏创新:深度学习的起跑枪声
《AI与游戏创新:深度学习的起跑枪声》 目录 引言AIGC定义与重要性AI在游戏中的应用AI推动游戏创新的可能途径AIGC的挑战与解决方案结论:AI是游戏行业的下一站 引言 AI(人工智能)正在全球范围内改变各个行业,游戏行…...
【GUI开发】用python爬YouTube博主信息,并开发成exe软件
文章目录 一、背景介绍二、代码讲解2.1 爬虫2.2 tkinter界面2.3 存日志 三、软件演示视频四、说明 一、背景介绍 你好,我是马哥python说,一名10年程序猿。 最近我用python开发了一个GUI桌面软件,目的是爬取相关YouTube博主的各种信息&#…...
7.6 函数的递归调用
直接调用: ### 1. 直接递归调用 直接递归调用是指一个函数直接调用自己。例如,计算阶乘的函数,可以使用递归方法: int factorial(int n) {if (n < 1) {return 1;}return n * factorial(n - 1); } 在这个例子中,f…...
本地开机启动jar
1:首先有个可运行的jar包 本地以ruiyi代码为例打包 2:编写bat命令---命名为.bat即可 echo off java -jar D:\everyDay\test\RuoYi\target\RuoYi.jar 3:设置为开机自启动启动 快捷键winr----输入shell:startup---打开启动文档夹 把bat文件复…...
解决uniapp手机真机调试时找不到手机问题
1、检查 USB 调试是否开启 2、检查是否有选择 文件 传输 选项 3、如果上述都做了还找不到,可以看看开发者选项中的【USB设置】,把模式改为 MIDI 模式...
HarmonyOS应用开发者-----高级认证试题及答案
HarmonyOS应用开发者高级认证试题及答案 试题会不定时刷新,本试题仅供大家学习参考 【判断题】 2/2 HarmonyOS应用可以兼容OpenHarmony生态 正确(True)【判断题】 2/2 所有使用@Component修饰的自定义组件都支持onPageShow,onBackPress和onPageHide生命周期函数。 正确(True…...
R语言随机波动模型SV:马尔可夫蒙特卡罗法MCMC、正则化广义矩估计和准最大似然估计上证指数收益时间序列...
全文链接:http://tecdat.cn/?p31162 最近我们被客户要求撰写关于SV模型的研究报告,包括一些图形和统计输出(点击文末“阅读原文”获取完整代码数据)。 相关视频 本文做SV模型,选取马尔可夫蒙特卡罗法(MCMC)、正则化广…...
详细教程:Stegsolve的下载,jdk的下载、安装以及环境的配置
最近在学习隐写术,下载stegsolve 以及使用stegsolve倒腾了很久,避免朋友们和我一样倒腾了很久,希望此文可以帮到刚在学习隐写的朋友们(win7下使用stegsolve) 文章目录 一、下载stegsolve链接二、jdk的下载三、jdk的安装四、配置环境变量五、检…...
Watermark 是怎么生成和传递的?
分析&回答 Watermark 介绍 Watermark 本质是时间戳,与业务数据一样无差别地传递下去,目的是衡量事件时间的进度(通知 Flink 触发事件时间相关的操作,例如窗口)。 Watermark 是一个时间戳, 它表示小于该时间戳的…...
Umi-OCR:重新定义离线文字识别的全场景解决方案
Umi-OCR:重新定义离线文字识别的全场景解决方案 【免费下载链接】Umi-OCR Umi-OCR: 这是一个免费、开源、可批量处理的离线OCR软件,适用于Windows系统,支持截图OCR、批量OCR、二维码识别等功能。 项目地址: https://gitcode.com/GitHub_Tre…...
Anything to RealCharacters 2.5D转真人引擎效果可视化:预处理前后对比与输出质量评估
Anything to RealCharacters 2.5D转真人引擎效果可视化:预处理前后对比与输出质量评估 你是否曾想过,将心爱的动漫角色、游戏立绘或者卡通头像,一键变成一张以假乱真的真人照片?这听起来像是魔法,但现在,借…...
不用Animator!用Playable+Timeline打造Unity自定义动画状态机(含项目代码片段)
突破Animator限制:Playable与Timeline构建Unity高阶动画系统 在Unity游戏开发中,动画系统一直是角色表现的核心。传统Animator虽然入门简单,但当项目复杂度上升时,状态机臃肿、过渡僵硬、调试困难等问题逐渐暴露。许多中高级开发…...
【限时开放】CPython核心团队亲授:2026 Python原生AOT编译接入Checklist(含12个预编译hook校验点)
第一章:Python原生AOT编译方案2026的演进背景与核心价值近年来,Python在云原生、边缘计算与实时系统场景中的部署瓶颈日益凸显:CPython解释器的启动延迟、内存开销及运行时JIT缺失,严重制约了其在低延迟服务、嵌入式Python模块和安…...
给STM32密码锁加个“记忆”:手把手教你用CubeMX配置I2C读写EEPROM(AT24C02)
为STM32密码锁赋予持久记忆:CubeMX驱动AT24C02 EEPROM全攻略 当你的密码锁在断电后依然能记住最后一次设置的密码,这种"记忆"能力往往能大幅提升用户体验。本文将带你深入探索如何通过I2C总线连接AT24C02 EEPROM芯片,为基于STM32F1…...
多无人机协同打击任务分配方法
随着无人机技术的不断成熟和完善,其军事应用的优势日益显现,近年来其在军事冲突中 所发挥的作用更使人们认识到,无人机在未来战争中将成为重要的军事装备。随着无人机在军 事中的大量应用,无人机集群协同执行任务将成为典型的应用…...
SiameseAOE中文-base多场景落地:金融投诉文本中‘服务态度’‘处理时效’双抽取
SiameseAOE中文-base多场景落地:金融投诉文本中‘服务态度’‘处理时效’双抽取 1. 模型简介 SiameseAOE通用属性观点抽取-中文-base是一个专门用于中文文本信息抽取的AI模型。它基于先进的提示(Prompt)文本(Text)构…...
基于OFA的智能写作助手:图文内容自动生成与问答
基于OFA的智能写作助手:图文内容自动生成与问答 1. 引言 你有没有遇到过这样的情况:手头有一堆产品图片,却不知道怎么写吸引人的商品描述;或者看到一张复杂的图表,想要快速提取关键信息却无从下手;又或者…...
FastAdmin定时任务实战:从数据库备份到邮件提醒的5个真实场景配置
FastAdmin定时任务实战:从数据库备份到邮件提醒的5个真实场景配置 在FastAdmin的实际开发中,定时任务就像一位不知疲倦的助手,能够自动完成各种重复性工作。但很多开发者掌握了基础配置后,却不知道如何将其应用到真实业务场景中。…...
RStudio Server部署与运维实战:从零搭建到高效管理
1. 环境准备:搭建RStudio Server的基石 在开始部署RStudio Server之前,我们需要确保服务器环境已经准备就绪。就像盖房子需要打地基一样,这一步决定了后续所有工作的稳定性。我遇到过不少因为环境问题导致的安装失败案例,大多数都…...
