Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >C:01---数据类型与ASCII

C:01---数据类型与ASCII

作者头像
用户3479834
发布于 2021-02-03 07:44:26
发布于 2021-02-03 07:44:26
78600
代码可运行
举报
文章被收录于专栏:游戏开发司机游戏开发司机
运行总次数:0
代码可运行

一、整型

int

  • 取值范围:-32768~32767

unsigned int

  • 取值范围:0~65535

short /short int

  • 取值范围:比int小

unsigned short

  • 无符号短整型

long

  • 长整型
  • 定义时,后面加上l或L

有符号与无符号数:

  • unsigned:无符号数,一般用来表示数据
  • signed:有符号数,一般用来表示数字

整型占位符:

int

  • 使用%d

unsigned int

  • 使用%u

long

  • 10进制显示:%ld。 如果系统中int与long大小相同,用%d也可以
  • 8进制显示:%lo
  • 16进制显示:%lx

unsigned long

  • %lu

short

  • 10进制显示:%d、%hd
  • 8进制显示:% ho

二、字符型

char

  • 占位符:%c
  • 有符号的范围:-128~127
  • 无符号的范围:0~255

转义字符

\a

警告

\b

退格

\f

换页

\n

换行

\r

回车

\t

水平制表符

\v

垂直制表符

\\

反斜杠\

\'

单引号

\"

双引号

\?

问号

\0oo

八进制值(oo必须是有效的八进制数,即0~7中的一个数)

\xx

xx也是八进制值

\xhh

十六进制数(hh必须是有效的十六进制数,即0~f中的一个数)

  • 例如:\x4d ==>字符M \12(换行符)
  • 键盘按住alt不送,键盘输入数字,松开alt,就会打印数字对应的字符

三、浮点型

float

  • 精确到小数点后6~7位。4字节
  • 占位符:%f
  • 定义时,后面加上f或F。如果没有加,编辑器会默认帮你升级为double类型

double

  • 精确到小数点16-17位。8字节
  • 占位符:%lf

long double

  • float:对速度快,精度要求不高时使用
  • double:对精度要求高,数据很大的时候使用

四、void

  • void a; //a并没有什么意义,也没有开辟空间,只是声明有这个变量而已。等到强制类型转化时才开辟空间存储

五、打印八进制、十六进制

  • 8进制:前缀0
  • 16进制:前缀0x或0X
  • %o:8进制显示数字
  • %x:16进制显示数字
  • %#o:8进制数字前面带有0前缀
  • %#x、%#X:16进制数字前面带有0x或0X前缀
  • int a=08; //08位八进制数
  • int b=0x15; //15为十六进制数

六、ASCII

这里大家需要记住几个常用的 字符'0'对应的码值是48 ,字符’A‘对应的码值是65, ’a‘对应的是97.

如果你已经有一定的C语言基础了,那么你可以看这块代码:

这段代码就是将你输入的字符进行强制转换成int类型的值。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <stdio.h>
int main(){
     char a = ' ';
     int  b = 0;
     while(1){
       a = getchar();
       b = (int)a;
       printf("%d",b);
     }
}

下面是我通过GDB断点调试,打印输出a的地址,以及a地址内的值,可以看出,实际上字符在内存里的值仍然是97(只不过我把它转成10进制,当然你可以看二进制的数值)

这俩看不懂,不要紧,我会在C语言的基础部分抽出2-4个文章来专门讲调试(linux下的gdb,和windows下的debug都会分开讲),这样你看C语言的指针部分将不再迷茫,看内存不迷路。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 游戏开发司机 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
C++学习笔记 基本数据类型
乐百川
2018/01/09
8360
初识C语言·2
signed和unsigned都是C语言中的关键字,它们的作用是决定字符或者整型的正负号。
_lazy
2024/10/16
1160
初识C语言·2
【C语言】数据类型和变量详解
C语言为了描述世界里丰富的数据提供了许多种的数据类型,现在我们来详细介绍一下
TANGLONG
2024/10/15
3350
【C语言】数据类型和变量详解
Java基本数据类型
boolean是布尔类型,用来表示逻辑真值,只有两个值,真和假。而且不能和其他基本类型进行类型转换,主要作用是在条件和判断语句中作为判断条件。
乐百川
2022/05/05
4050
c-3
基本类型: (其值不可以再分解为其它类型。也就是说,基本数据类型是自我说明的)     ××× 字符形 实型(浮点型)   枚举类型                 单精度 双精度 构造类型: (是根据已定义的一个或多个数据类型用构造的方法来定义的。也就是说,一个构造类型的值可以分解成若干个“成员”或“元素”。每个“成员”都是一个基本数据类型或又是一个构造类型。)
py3study
2020/01/09
6270
Java 基础系列(一):基础数据类型
今天我们来聊一下Java这门语言的数据类型,众所周知,Java是一种强类型语言。在Java中,一共有8种基本类型,其中4种整形,2种浮点类型,1种用于表示Unicode编码的字符单元的字符类型char和1种用于表示真值的boolean类型。
山禾说
2019/01/21
5100
C语言进阶指南(4)(数据类型——整数类型详解)
int用于声明一个整数类型的变量,我们根据变量的实际应用可以使用short int,long int,long long int。
代码小豪
2024/06/06
2040
【C语言】数据类型和变量
C语言提供了丰富的数据类型来描述生活中的各种数据。使用整型类型来描述整数,使用字符类型来描述字符,使用浮点型类型来描述小数。所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据。
zxctscl
2024/09/24
1670
【C语言】数据类型和变量
【C语言】数据类型与变量
C语言原来并没有为布尔值单独设置一个类型,而是使用整数 0 表示假,非 0 表示真。
云边有个稻草人
2024/10/21
1170
【C语言】数据类型与变量
c语言从入门到实战——C语言数据类型和变量
本文基于VS2022,将介绍一系列的C语言数据类型和变量,让读者对C语言有一个初步的了解,并对后续的学习做下铺垫。
鲜于言悠
2024/03/20
3320
c语言从入门到实战——C语言数据类型和变量
【C生万物】C语言数据类型、变量和运算符
C语言提供了了丰富的数据类型来描述生活中的各种数据。 C语言提供的一下数据类型:
爱敲代码的小杨.
2024/05/07
1350
【C生万物】C语言数据类型、变量和运算符
【C/C++】C语言特性总结
已经有大约半年的时间没有碰C语言了,当时学习的时候记录了很多的笔记,但是都是特别混乱,后悔那个时候,不懂得写博客,这里凭借记忆和零零散散的笔记记录,尝试系统性地复习一下C语言。
全栈程序员站长
2022/06/25
1.3K0
【C/C++】C语言特性总结
【IOS 开发】Objective - C 入门 之 数据类型详解
转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/38544659
韩曙亮
2023/03/27
1.3K0
【必读】C语言基础知识大全
C语言程序的结构认识 用一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使小伙伴对c语言有个初步认识。 例1:计算两个整数之和的c程序: #include main() { int a,b,sum; /*定义变量a,b,sum为整型变量*/ a=20; /*把整数20赋值给整型变量a*/ b=15; /*把整数15赋值给整型变量b*/ sum=a+b; /*把两个数之和赋值给整型变量sum*/ printf(“a=%d,b=%d,su
老九君
2018/03/06
6.3K0
【必读】C语言基础知识大全
C语言数据类型的定义
将各个位数的二进制用十进制中的【数字 】来表示多位的二进制数 通过【数字 】相加就可以得到二进制数的数据
以某
2023/03/07
1.3K0
c语言格式大整理
1、C语言中,非零值为真,真用1表示;零值为假,假用0表示。 2、转义字符参考: \a 蜂鸣,响铃 \b 回退:向后退一格 \f 换页 \n 换行 \r 回车,光标到本行行首 \t 水平制表 \v 垂
Gxjun
2018/03/21
3.1K0
c语言格式大整理
C++处理数据
这部分主要讲C++++中的数据类型及其变体 前面也没用这方面的笔记,刚好趁着C++再复习一次 我们申明变量 int age; age = 15;语句告诉程序正在存储整数,程序找到一块能够存储整数的内存,将内存单元标记为age,然后把5拷贝到这个内存单元。
用户7272142
2023/10/11
2300
C++处理数据
c++基础之变量和基本类型
之前我写过一系列的c/c++ 从汇编上解释它如何实现的博文。从汇编层面上看,确实c/c++的执行过程很清晰,甚至有的地方可以做相关优化。而c++有的地方就只是一个语法糖,或者说并没有转化到汇编中,而是直接在编译阶段做一个语法检查就完了。并没有生成汇编代码。也就是说之前写的c/c++不能涵盖它们的全部内容。而且抽象层次太低,在应用上很少会考虑它的汇编实现。而且从c++11开始,加入了很多新特性,给人的感觉就好像是一们新的编程语言一样。对于这块内容,我觉得自己的知识还是有欠缺了,因此我决定近期重新翻一翻很早以前买的《c++ primer》 学习一下,并整理学习笔记
Masimaro
2021/01/20
1.6K1
C语言——B/数据类型和变量
自定义类型包括:数组、结构体(struct)、枚举(enum)、联合体(union)。
用户11015888
2024/03/11
2060
C语言——B/数据类型和变量
C语言符号意思(看了必懂系列)「建议收藏」
所有的努力都不会完全白费,你付出多少时间和精力,都是在对未来的积累。世界上什么都不公平,唯独时间最公平,你是懒惰还是努力,时间都会给出结果。 auto :声明自动变量 一般不使用 double :声明双精度变量或函数 int: 声明整型变量或函数 struct:声明结构体变量或函数 break:跳出当前循环 else :条件语句否定分支(与 if 连用) long :声明长整型变量或函数 switch :用于开关语句 case:开关语句分支 enum :声明枚举类型 register:声明积存器变量 typedef:用以给数据类型取别名(当然还有其他作用) char :声明字符型变量或函数 extern:声明变量是在其他文件正声明(也可以看做是引用变量) return :子程序返回语句(可以带参数,也看不带参数) union:声明联合数据类型 const :声明只读变量 float:声明浮点型变量或函数 short :声明短整型变量或函数 unsigned:声明无符号类型变量或函数 continue:结束当前循环,开始下一轮循环 for:一种循环语句(可意会不可言传) signed:生命有符号类型变量或函数 void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用) default:开关语句中的“其他”分支 goto:无条件跳转语句 sizeof:计算数据类型长度 volatile:说明变量在程序执行中可被隐含地改变 do :循环语句的循环体 while :循环语句的循环条件 static :声明静态变量 if:条件语句
全栈程序员站长
2022/08/31
3.1K0
相关推荐
C++学习笔记 基本数据类型
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验