2. C语言 数据类型

数据类型决定:

        1. 数据占内存字节数

        2. 数据取值范围

        3. 可以进行的操作

1字节(Byte)=8位(bit)

一个汉字=2字节

中文标点=3字节

一个英文字母=1字节

英文标点=1字节

2.1整数类型

类型

字节数

取值范围

int(基本整型)

4

-231~(231-1)  2 147 483 648

short(短整型)

2

-215~(215-1)  32 768

long(长整型)

4

-231~(231-1)  2 147 483 648

long long(双长型)

8

-263~(263-1)  

2.2浮点类型

        头文件 float.h 定义了宏,在程序中可以使用这些值和其他有关实数二进制表示的细节。

类型

字节数

有效位

flot(单精度浮点型)

4

6位小数

double(双精度浮点型)

8

15位小数

long double(长双精度浮点型)

10

19位小数

2.3字符类型

类型

字节数

取值范围

char(基本整型)

1

-128~128

unsigned char(基本整型)

1

0~255

ASCII码

ASCII代码

字符

065

A

066

B

097

a

098

b

2.4 void 类型

1 函数返回为空

        C 中有各种函数都不返回值,或者可以说它们返回空。不返回值的函数的返回类型为空。

        例如 void exit (int status);

2 函数参数为空

        C 中有各种函数不接受任何参数。不带参数的函数可以接受一个 void。

        例如 int rand(void);

3 指针指向 void

        类型为 void * 的指针代表对象的地址,而不是类型。

        例如,内存分配函数 void *malloc( size_t size );

        返回指向 void 的指针,可以转换为任何数据类型。

2.5 sizeof 运算符

        使用 sizeof 运算符。表达式 sizeof(type) 得到对象或类型的存储字节大小。

/*-----------------------------------------------------------------------*/
#include <stdio.h>
/*-----------------------------------------------------------------------*/
/*
*  @brief
*		关于 main 的功能描述:
*			获取环境中各数据类型的占用字节个数.
*  @param[in]  void
*
*  @return  return 0
*
*  @implements 低层需求标识号 XXXX
*/
int main()
{
	int a = 10;
	short b = 20;
	long c = 30;
	long long d = 40;

	float e = 1.23;
	double f = 12.56;
	long double g = 120.3456;

	char h = 'A';
	unsigned char i = 'b';

	printf("a=%d,int_sizeof=%d\n", a, sizeof(a));
	printf("b=0x%.2x,short_sizeof=%d\n", b, sizeof(b));
	printf("c=%ld,long_sizeof=%d\n", c, sizeof(c));
	printf("d=%ld,long long_sizeof=%d\n", d, sizeof(d));
	printf("\n");

	printf("e=%f,float_sizeof=%d\n", e, sizeof(e));
	printf("f=%.2f,double_sizeof=%d\n", f, sizeof(f));
	printf("g=%lf,long double_sizeof=%d\n", g, sizeof(g));
	printf("\n");

	printf("h=%c,char_sizeof=%d\n", h, sizeof(h));
	printf("i=0x%.2x,unsigned char_sizeof=%d\n", i, sizeof(i));
	printf("\n");

	return 0;
}
/*-----------------------------------------------------------------------*/

输出结果如下

2.6 数据的输入输出

2.6.1 printf()

格式字符

代码

输出

d格式符

printf("%5d\n",123)

123(123前面有2个空格)

c格式符

printf("%5c\n",'a')

a

s格式符

printf("%s\n",'China')

China

f格式符

printf("%5.2d\n",12.3456)

12.35(保留两位小数,四舍五入)

o格式符

printf("%d\t%o\n",-1,-1)

-1    37777777777 (八进制)

x格式符

printf("%d\t%x\n",-1,-1)

-1    ffffffff (十六进制)

2.6.2 scanf()

scanf("%d",&a);     scanf(格式控制,地址表列);

非常感谢您的支持!创作不易,转发备注出处!

自用展示内容,不定期更新维护内容,让我们把 C开发 变得更专业。

十年开发基本功,常年开班收徒(一年学徒制度),每年10个名额。

商业合作加微信,项目接包与外包。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值