嵌入式—— C 基础(2)

本文详细介绍了C语言中的变量,包括概念、定义格式、内存大小、赋值与初始化,以及注意事项。接着讲解了强制类型转换,包括显式和隐式转换,并提醒了其潜在风险。最后,对C语言的运算符进行了全面概述,涵盖算术、自增自减、关系、逻辑、位、赋值、条件和sizeof运算符,以及它们的优先级和使用细节。
摘要由CSDN通过智能技术生成

目录

一. 变量

1.1 概念

1.2 定义变量的格式

1.3 变量占用内存空间的大小

1.4 变量的赋值和初始化

1.5 注意事项

二. 强制类型转换

2.1 概念

2.2 显示强制转换

2.3 隐形强制转换

三. 运算符

3.1 概念

3.2 分类

3.3 算术运算符

3.4 自增自减运算符

3.5 关系运算符

3.6 逻辑运算符

3.7 位运算符

3.8 赋值运算符

3.9 条件运算符

3.10 sizeof 运算符

3.11 逗号运算符(了解)

3.12 运算符的优先级


一. 变量

1.1 概念

变量指的是在程序运行过程中,值允许发生改变的量(变量用来保存数据)

1.2 定义变量的格式

定义变量:

(存储类型)数据类型  变量名

存储类型:auto,regisiter,extern,static,const,volatile

局部变量一般不写存储类型默认为 auto

补充:变量名应符合规范

1.3 变量占用内存空间的大小

数据类型决定,char int float double

1.4 变量的赋值和初始化

定义变量的时候给变量赋一个初值,就是变量的初始化

比如: 

                int a = 10;    (不是a=10,而是把10给a,可以把变量想象成一个空间)

也可以用一个表达式来给变量赋值:

                int a = 1;

                int b = a*2;

同样,变量之间也可以运算

                  int a = 1;

                  int b = a*2;

                  int c =  a + b;

如果定义的变量没有初始化,那么变量存储的值是一个随机值

1.5 注意事项

#include <stdio.h>

int main(int argc, const char *argv[])
{
	//在同一作用域内不允许定义重名的变量
	//作用域 就是最近的 {}
	int a = 10;
	//int a = 20;//错误的
	

	//一行可以定义多个变量 中间用 逗号分隔
	int m,n = 10,k; //mk是随机值  n是10
	printf("m = %d,  n = %d,  k = %d\n", m, n, k);

	//变量如果没有定义 不能直接使用
	value = 100;

	return 0;
}

二. 强制类型转换

2.1 概念

所谓的强制类型转换,简称强转,就是在某次运算中通过某种方式将变量的类型转换成新的类型

来参与本次运算。变量自身的类型不会发生改变。分为显式强转和隐式强转。

2.2 显示强制转换

(类型)变量名

#include <stdio.h>

int main(int argc, const char *argv[])
{
	int m = 5;
	int n = 2;
	int ret = m/n;
	printf("ret = %d\n", ret);//2

	float ret2 = m/n;
	printf("ret2 = %f\n", ret2);//2.000000

	float ret3 = (float)m/(float)n;
	printf("ret3 = %f\n", ret3);//2.500000

	//m和n本身的类型没有变
	printf("%d %d\n", m, n);

	return 0;
}

注意:

强制类型转换,是不安全的,要谨慎使用。

小的类型转大的类型一般没问题,

但是大的类型转小的类型就可能出现数据的截断和丢失。

2.3 隐形强制转换

取决于编译器的严谨程度,如果编译器认为可以,就允许使用,编译器认为不行,

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值