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

c基本知识

c基本知识

1.数据类型相关的关键字

用来存储数据

  • char字符1字节
  • int 整型4字节
  • short短整型2字节
  • long长整型4/8字节
  • float 单精度4字节
  • double 双精度8字节
  • struct 结构体
  • union 共用体
  • enum 枚举
  • signed 有符号
  • unsigned 无符号
  • void 空类型

2.存储相关关键字

  • register 寄存器变量
  • static 静态变量
  • const 只读变量
  • auto 自动变量
  • extern 声明外部变量或函数可用

3.控制语句相关的关键字

  • if else
  • switch break continue
  • for
  • while default
  • do
  • switch case goto

4.其他关键字

  • sizeof 测量类型的大小
  • typedef为已有的类型取个别名
  • volatile 强制访问内存
%d %hd %ld 十进制有符号整数
%u %hu %lu 十进制无符号整数
%x, 以十六进制表示的整数
%o 以八进制表示的整数
%f float 型浮点数 %lf double 型浮点数
%e 指数形式的浮点数
%s 字符串 %c 单个字符
%p 指针的值
%#x 十六进制 0x11111
%3d 占 3 个位宽 如果实际输出位数超过 3 格式无效
%03d %-3d %5.2f
二进制,每一位只能存放 010b 开头 c 语言不支持直接输出二进制
八进制,每一位存放范围:0~7 以数值 0 开头 比如:0123 输出格式%o
十进制,每一位存放范围:0~9 比如:123 输出格式%d %u %hd %hu %ld %lu
十六进制,每一位存放范围:0~9 a~f 以 0x 开头 比如:0x123 输出形式%x

原码反码补码

1、原码:就是数值的二进制 直接表现形式 
无符号数:10 原码 0000 1010
有符号数:
正数:+10 原码 0000 1010
负数:-10 原码 1000 1010
2、反码: 
无符号数:10 原码 0000 1010 == 反码 0000 1010
有符号数:
正数:+10 原码 0000 1010 == 反码 0000 1010
负数:反码 等于 原码的符号位不变 其他位按位取反
-10 原码 1000 1010 == 反码 1111 0101
3、补码: 
无符号数:10 原码 0000 1010 == 反码 0000 1010 == 补码 0000 1010
有符号数:
正数:+10 原码 0000 1010 == 反码 0000 1010 == 补码 0000 1010
负数:补码 = 反码+1 不在乎符号位
-10 原码 1000 1010 反码 1111 0101 补码:1111 0110

总结
无符号数、有符号正数:原码=反码=补码
负数:反码 为符号位不变 其他位按位取反 补码:反码+1
任何数据在计算机中以补码存储。
无符号数、有符号正数 在计算机中按原码存储。
负数 在计算机中 按补码存储。


http://www.kler.cn/news/310477.html

相关文章:

  • Windows10电脑右下角时间显示到秒
  • Golang | Leetcode Golang题解之第414题第三大的数
  • C++(学习)2024.9.18
  • Zabbix企业分布式监控(Zabbix Enterprise Distributed Monitoring)
  • Electron 图标修改
  • 深度学习 之 常见损失函数简介:名称、作用及用法
  • mysql 8.0 日期维度表生成(可运行)
  • CSS传统布局方法(补充)——WEB开发系列37
  • 【路径规划】WDM网络中RWA问题的教育网络规划工具(基于MILP和启发式)
  • 图说GPT网络结构(参数量与计算量估计)
  • 何时空仓库
  • 计算机毕业设计 乡村生活垃圾管理系统的设计与实现 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试
  • C++《类和对象》(下)
  • 创意照片比赛点子以及Wishpond如何变革您的活动
  • redis常见类型设置、获取键值的基础命令
  • 【工具变量】气候适应型试点城市DID(2005-2022年)
  • 【开源免费】基于SpringBoot+Vue.JS网上超市系统(JAVA毕业设计)
  • iptables配置NAT及端转发
  • Restample使用http访问https接口
  • 【AI战略思考0】导言
  • 【FFT】信号处理——快速傅里叶变换【通俗易懂】
  • 多层感知机——pytorch与paddle实现多层感知机
  • Java发邮件:如何配置SMTP服务器实现发信?
  • 【项目一】基于pytest的自动化测试框架———解读requests模块
  • C# 修改项目类型 应用程序程序改类库
  • IOS 24 实现歌单详情(UITableView)列表
  • 下载Kafka 3.0.0教程
  • 基于Matlab的模拟答题卡识别阅卷可以识别指定答题卡的各个部分-界面
  • Day04_JVM实战
  • 开发定制:学校考试成绩自动处理,可定制规则