【C语⾔】变量常量宏定义,数据类型以及取值范围变量和常量是程序处理的两种基本数据对象
变量
变量的意义就是确定⽬标并提供存放的空间。
变量的命名规则
1.变量名只能是英⽂字母(A-Z,a-z)和数字(0-9)或者下划线 _ 组成。
2.第⼀个字母必须是字母或者下划线开头。
3.变量名区分⼤⼩写。
4.不能使⽤关键字来命名。
-关键字列表
基本数据类型
1.char
-字符型,占⽤⼀个字节。
2.int
-整型,通常反映了所⽤机器语⾔中整数的最⾃然长度。
3.float
-单精度浮点型。
4.double
-双精度浮点型。
声明变量的语法
数据类型 变量名
-int a
-char b
-float c
-double d
#include<stdio.h>
#include<stdlib.h>
int main(){
int a;
char b;
float c;
double d;
a=520;
b='F';
c=3.14;
d=3.141592653;
printf("表⽰将数值a加到它所在的位置:%d\n",a);
printf("表⽰将字符b加到它所在的位置:%c\n",b);
printf("表⽰精确到两位的浮点数,圆周率为:%.2f\n",c);
printf("表⽰整个数据占11位,现取九位,圆周率精确到⼩数点后九位是:%11.9f\n",d);
system("pause");
return0;
}
常量
1.整型常量:520、1314、123
2.实型常量:
3.14、5.12、8.97
3.字符常量:
-普通字符:‘L’,‘O’,‘v’,‘e’
-转义字符:’\n’,’\t’,’\b’
4.字符串常量:“demo”
字符:‘A’,‘b’
字符串:‘Hello world’ 编译器在编译的时候会给他加上⼀个转义字符 ‘\0’ 空字符表⽰字符串的结束,故这个字符串有12个字符。
5.符号常量:使⽤前必须先定义
-定义符号常量 (宏定义)
格式:#define 标识符 常量
例如:
#define MAX "100"
标识符(identifier)【有意思的是标识符念作biao zhi fu】
1.标识符只能是英⽂字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。
2.必须以字母或下划线开头。
3.标识符区分⼤⼩写。
4.不能使⽤关键字来命名标识符。
基本类型
整数类型:
-short int
-int
-long int
-long long int
浮点数类型:
-float
-double
-long double
字符类型:
-char
布尔类型:
-_Bool
枚举类型:
-enum
sizeof运算符
sizeof运算符⽤于获得数据类型或表达式的长度
-sizeof(object);//sizeof(对象);
浮点型变量float
-sizeof(type_name);//sizeof(类型);
-sizeof object;//sizeof 对象;
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
int main(){
int i;
char j;
float k;
i=123;
j='c';
k=3.14;
printf("size of int is %d\n",sizeof(int));
printf("size of i is %d\n",sizeof(i));
printf("size of char is %d\n",sizeof(char));
printf("size of j is %d\n",sizeof(j));
printf("size of float is %d\n",sizeof(float));
printf("size of k is %d\n",sizeof(k));
//接下来让我们看看基本数据类型所占的字符的⼤⼩
printf("基本数据类型所占字符⼤⼩:\n");
printf("size of int is %d\n",sizeof(int));
printf("size of short is %d\n",sizeof(short));
printf("size of long is %d\n",sizeof(long));
printf("size of long long is %d\n",sizeof(long long));
printf("size of char is %d\n",sizeof(char));
printf("size of _Bool is %d\n",sizeof(_Bool));//由于C编译不⽀持布尔型,导⼊头⽂件#include <stdbool.h>即可
printf("size of float is %d\n",sizeof(float));
printf("size of double is %d\n",sizeof(double));
printf("size of long double is %d\n",sizeof(long double));
system("pause");
return0;
}
【该例遇到了两个问题:
1.输⼊ _Bool 时显⽰未定义标识符 Bool 。解决办法:导⼊头⽂件#include <stdbool.h>
2.运⾏结果中⽂显⽰乱码。 解决办法:VsCode编写C语⾔时默认代码格式位utf-8,右下⾓将代码格式通过编码保存味gbk即可。】
取值范围
⽐特位:CPU能读懂的最⼩单位 -bit b
字节:内存机构的最⼩寻址单位 -Byte B
1Byte==8bit
1个字节可以表⽰多⼤的数:11111111=255
进制
⼆进制——>⼗进制:2的n次⽅减⼀(n为1的个数)
符号位
signed和unsigned
signed表⽰该符号位可以存放带符号的数据。
unsigned表⽰该符号位存放不带符号的数据。
默认情况下为signed
-存放signed类型的存储单元中,左边第⼀位表⽰符号位。如果该位为0,表⽰该整数是⼀个整数,如
果该位为1,表⽰该整数是⼀个负数。-⼀个32位的整型变量,除去左边第⼀位符号位,剩下表⽰值的只有31个⽐特位。
-事实上计算机是⽤补码的形式来存放整数的值。
补码

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。