C语言----变量与常量

目录

变量

变量的分类

常量

分类:

1. 字符型常量

2. 字符串常量

3. 整形常量

4. 浮点型常量

5. 指数常量

6. 标识常量


变量

概念:在程序运行中发生改变的量

定义格式:

存储类型(一般存储类型是可以省略的) 数据类型 变量名

auto(省略的时候默认就是auto类型) int num;

存储类型就是变量的存储位置

数据类型就是变量所占字节的个数

数据类型:

名称

字节

取值范围(了解)

char 字符型

1字节

-2^7 ~ 2^7-1

short 短整型

2字节

-2^15 ~ 2^15-1

int 整型

4字节

-2^31 ~ 2^31-1

long 长整型

4字节

-2^31 ~ 2^31-1

float 单精度浮点型

4字节

有效数据 6-7位(一般是7位)

double 双精度浮点型

8字节

有效数据15-16位

变量的分类

变量分为两种

局部变量、全局变量的区别?(面试题)

局部变量 全局变量

1. 定义位置: 函数体内部 函数体外部

2. 初值: 为赋初值时,值为随机值 为赋初值时,值为0

3. 存储位置: 栈区 全局区(静态区)

4. 生命周期: 同函数体共存亡 同整个程序共存亡

5. 作用域: 作用于函数体内部 作用于整个程序

内存图:

常量

概念:程序运行中不会发生变化的值

分类:

1. 字符型常量

用 ''括起来

'a'->字符a

a -> 变量

'\0'

' '

'\n'

'\61' '\141' 'a' 97

2. 字符串常量

用 ""括起来

"hello"字符串后面 \0

3. 整形常量

我们一般用 int类型存储多一点

4. 浮点型常量

float(占4字节)double(占8字节)

5. 指数常量

3*10^8-> 3e8

2*10^-12->2e-12

如果不是 10的几次方了就不能用 e 了,可以使用 pow函数

6. 标识常量

宏定义:起标识作用

格式:#define宏名常量或表达式

遵循标识符的命令规则

一般大写表示

特点:只能单纯替换,不要进行手动的运算(原样替换,替换完再计算)

练习:
#define N 2
#define M N+3
#define NUM N+M/2+1

void main()
{
    printf("%d\n", NUM);
}

练习:结合宏定义三目运算符实现两个数求最大值

#define MAX(a, b) a>b ? a : b

int main()
{
    printf("max = %d\n", MAX(5, 8));
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WeeJot

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值