adada

C语言变量
程序运行中,变量的值可以发生改变,为了这个变量申请了一段内存 空间,可以改变变量的值
可以通过向存储空间中附值来改变变量的值,空间的大小由数据类型决定
常量是直接写到指令中的,CPU要运行程序需要指令与数据。
变量必须先定义再去使用,数据类型 + 变量名 = 数据 ;数据类型可以为基本数据类型也可以为构造数据类型
变量名
变量名只能由字母、数字、下划线构成,“不能以数字开头”。不能有!之类的其他字符
不能与C语言关键字重名,最好不要与C语言库函数重名,类printf...
变量名最好做到间名知意;驼峰法,或 下划线法。
宏一般名字全部大写(常量),其他变量名尽量不要全部大写。
常见变量
整形变量:short, unsigned short, int, unsigned int, long, unsigned long
小数变量:float, double
字符:char
bool: 开始要加上#include<stdbool.h>
void 缺省,不知道多大空间,所以不能用来定义变量
变量的初始化
int val; 变量的定义
int val = 100; 初始化,定义变量时,对变量的赋值;不初始化是随机值。
val = 200; 赋值
关于字符的初始化定义以及赋值
char str; 字符初始化(单个字符)
char strs[100]; 字符串定义[]表示这个字符串最大的字符上限
strs[100] = "aaaaaa"; X 字符串赋值不能使用等号

#include<string.h> 需要新的头文件
strcpy(strs, "aaaaaaa"); 使用默认函数进行赋值


变量必须先定义再使用
开辟对应类型的变量空间,空间名为变量名,通过变量名可以访问该空间,
除了常量与变量,还有一种数据类型:表达式
表达式:由运算符连接的常量与变量的式子
特点
1.表达式有类型
2.表达式有值
混合数据类型运算:
100 + 200 值:300,类型:数据类型不同时,如 整形 + 浮点 计算机转化为同一种类型进行计算,整形转化为double没有精度损失。规则:底精度类型转化为高精度类型,所占空间越大,精度越高。无符号类型精度>有符号类型精度。
char short在数据运算时会强制转化为int进行数据运算处理
float会强制转化为double进行数据运算处理
运算符
优先级
()优先级最高,其次单目运算符++,--(操作一个对象),双目运算符(两边都有数据), 三目, 赋值, 逗号
双目:算术>位移>关系>位>逻辑
算术运算符:
+ - * / %(取余) ++(自增运算符) --(自减运算)只有变量才能使用++或--,%是唯一不能对浮点数进行操作的运算符。
i++后置加,先用再加,
++i前置加,先加再用
赋值运算符:
=, ==(判断是否相等),+=, -=, /=, %=,
a += 3 -> a = a + 3, a -= 3 -> a = a - 3...
不同类型的赋值,左边的变量类型与右边数据类型不一样,按照左边的算。
有符号与无符号互相赋值,直接拷贝二进制内存。读取的方法按照有符号与无符号读取。
有符号的数据扩展,short -> int 小数据放入大空间,正数补0, 负数补1, 无符号数补0
大数据放入小空间, 舍弃超过存储空间的部分,有可能正数截取为负数,也可能反过来。
逗号运算符:
可以连接多个表达式
从左到右,依次执行逗号表达式,并将最后一个表达式的结果作为整体的结果。
sizeof运算符:
可以获得数据类型所占内存空间大小,单位是字节,C语言的关键字 不同于 函数

64位操作系统,这些总线指的是CPU一次处理数据处理8个字节。16位电脑一次处理2个字节。

输入输出
1.头文件 #include <stdio.h>
2.单个字符的输入输出函数 man ascii 查看ASCII表
getchar 从终端接受一个字符
ch = getchar();就是从终端接受到的ASCII码值
如果终端输入的是字符串,只接受第一个字符
putchar(括号中输入字符对应的ASCII码值,或单引号下的单个字符如'A')在终端打印一个字符
返回值,返回打印在终端的字符的ASCII码值(int)
所有在屏幕上输入和显示的都是字符
3.格式化字符串的输入输出函数
输入scanf

输出printf
————————————————
版权声明:本文为CSDN博主「myy-learn」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/2501_91650731/article/details/163110341