第一部分—C语言基础篇_2. 数据类型

这篇博客详细介绍了C语言中的数据类型,包括常量、变量、整型(int)、字符型(char)、浮点型(float、double)以及各种进制的概念。还讲解了变量的声明与定义的区别,sizeof关键字的使用,以及ASCII码和不同进制间的转换。此外,还探讨了计算机内存中数值的存储方式,如原码、反码、补码和数值溢出的情况。最后,提到了字符串格式化输出和输入的相关函数,如printf、putchar、scanf和getchar。
摘要由CSDN通过智能技术生成

2.1 常量与变量

2.1.1 关键字

2.1.2 数据类型

数据类型的作用:编译器预算对象(变量)分配的内存空间大小。

2.1.3 常量

常量:

  1. 在程序运行过程中,其值不能被改变的量
  2. 常量一般出现在表达式或赋值语句中

整型常量

100,200,-100,0

实型常量

3.14 , 0.125,-3.123

字符型常量

‘a’,‘b’,‘1’,‘\n’

字符串常量

“a”,“ab”,“12356”

2.1.4 变量

1) 变量

变量:

  1. 在程序运行过程中,其值可以改变
  2. 变量在使用前必须先定义,定义变量前必须有相应的数据类型

标识符命名规则:

  1. 标识符不能是关键字
  2. 标识符只能由字母、数字、下划线组成
  3. 第一个字符必须为字母或下划线
  4. 标识符中字母区分大小写

变量特点:

  1. 变量在编译时为其分配相应的内存空间
  2. 可以通过其名字地址访问相应内存

2) 声明和定义区别

  1. 声明变量不需要建立存储空间;
  2. 定义变量需要建立存储空间。

一般的情况下,把建立存储空间的声明称之为“定义”,而把不需要建立存储空间的声明称之为“声明”。

2.1.5 使用示例

#include <stdio.h>
#define MAX 10           //声明了一个常量,名字叫MAX,值是10,常量的值一旦初始化不可改

int main()
{
	int a;	             //定义了一个变量,其类型为int,名字叫a

	const int b = 10;    //定义一个const常量,名为叫b,值为10
	//b = 11;            //err,常量的值不能改变

	//MAX = 100;	     //err,常量的值不能改变

	a = MAX;             //将abc的值设置为MAX的值
	a = 123;

	printf("%d\n", a);   //打印变量a的值

	return 0;
}

2.2整型:int

2.2.1 整型变量的定义和输出

打印格式

含义

%d

输出一个有符号的10进制int类型

%o

输出8进制的int类型

%x

输出16进制的int类型,字母以小写输出

%X

输出16进制的int类型,字母以大写输出

%u

输出一个10进制的无符号数

2.2.2 整型变量的输入

#include <stdio.h>

int main()
{
	int a;
	printf("请输入a的值:");

	scanf("%d", &a);            //输入a的值          

	printf("a = %d\n", a);      //打印a的值

	return 0;
}

2.2.3 shortint、longlong long所占字节数

数据类型

占用空间

short(短整型)

2字节

int(整型)

4字节

long(长整形)

Windows为4字节,Linux为4字节(32位),8字节(64位)

long long(长长整形)

8字节

打印格式

含义

%d

输出int类型

%ld

输出long类型

%lld

输出long long类型

2.2.4 有符号数和无符号数区别

1) 有符号数

有符号数是最高位为符号位,0代表正数,1代表负数。

2) 无符号数

无符号数最高位不是符号位,而就是数的一部分,无符号数是非负数。

3) 有符号和无符号整型取值范围

数据类型

占用空间

取值范围

short

2字节

-32768 到 32767 (-215 ~ 215-1)

int

4字节

-2147483648 到 2147483647 (-231 ~ 231-1)

long

4字节

-2147483648 到 2147483647 (-231 ~ 231-1)

unsigned short

2字节

0 到 65535 (0 ~ 216-1)

unsigned int

4字节

0 到 4294967295 (0 ~ 232-1)

unsigned long

4字节

0 到 4294967295 (0 ~ 232-1)

2.3 sizeof关键字

  1. sizeof不是函数,所以不需要包含任何头文件,它的功能是计算一个数据类型的大小,单位为字节
  2. sizeof的返回值为size_t
  3. size_t类型在32位操作系统下是unsigned int,是一个无符号的整数
#include <stdio.h>

int main()
{
	int a;
	int b = sizeof(a);           //sizeof得到指定值占用内存的大小,单位:字节
	printf("b = %d\n", b);

	return 0;
}

2.4字符型char

2.4.1 字符变量的定义和输出

字符型变量用于存储一个单一字符,在 C 语言中用 char 表示,其中每个字符变量都会占用 1 个字节。在给字符型变量赋值时,需要用一对英文半角格式的单引号(' ')把字符括起来。字符变量实际上并不是把该字符本身放到变量的内存单元中去,而是将该字符对应的 ASCII 编码放到变量的存储单元中。char的本质就是一个1字节大小的整型

#include <stdio.h>

int main()
{

	char A = 'A';
	char a = 'a';

	printf("a = %d\n", a);		//97
	printf("A = %d\n", A);	    //65

	printf("A = %c\n", 'a' - 32); //小写a转大写A
	printf("a = %c\n", 'A' + 32); //大写A转小写a


	return 0;
}

2.4.2 字符变量的输入

#include <stdio.h>

int main()
{

	char ch;
	scanf("%c", &ch);
	printf("ch = %c\n", ch);     //打印ch的字符

	return 0;
}

2.4.2 ASCII对照表

ASCII值

控制字符

ASCII值

字符

ASCII值

<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值