数据类型
char //字符数据类型
例:
#include <stdio.h>
int main() //main前面int(决定返回值类型)表示main函数调用后返回一个整型值
{
char ch= 'A'; //此处必须为''否则代码无法执行
printf(" % c\n",ch); //此处必须为""否则代码无法执行,%c-->char
return 0; //返回0;此处语法上(实际上一般为0)不必为0,整型即可
}
short //短整型
int //整型
例:
#include <stdio.h>
int main()
{
int age= 19;
printf(" % d\n",age); //%d-->int(10进制)
return 0;
}
long //长整型
long long //更长的长整型
float //单精度浮点型
例:
#include <stdio.h>
int main()
{
float age= 19.10;
printf(" % f\n",age); //%f-->float
return 0;
}
double //双精度浮点型
各数据类型大小
计算机单位
bit - 比特位 ---->> 一个二进制位( 1 or 0 )
byte - 字节 ---->> 八个比特位
kb ---->> 1024个byte
mb ---->> 1024个kb
gb ---->> 1024个mb
tb ---->> 1024个gb
pb ---->> 1024个tb
使用代码了解数据大小 及 各数据大小
#include <stdio.h>
int main()
{
printf(" % d\n",sizeof(char)); //必须为%d(输出为整型);sizeof(东西),东西可以是类型也可以是变量
return 0;
}
char 1个字节
short 2
int 4
long 4(VC)/8 (规定sizeof(long) 》sizeof(int))
long long 8
float 4
double 8
变量 与 常量
变量
定义变量的方法
例:
#include <stdio.h>
int main()
{
short age= 20; //此处 age 即为变量
//float weight=90.5 系统对小数默认为双精度浮点型,此时会报错(精度丢失)
float weight=90.5f; //正确写法
char ch = 'w';
return 0;
}
变量的分类
#include <stdio.h>
int num1 = 10; //全局变量--定义再代码块{ }外的变量
int main()
{
{
int num2 = 20; //局部变量--定义再代码块{ }内的变量
int num1 = 100; //不会报错,打印结果为100(局部优先)
return 0;
}
printf("%d\n",num2) //报错,num2未定义(局部变量不能在本代码块{ }外使用)
printf("%d\n",num1) //打印为 10 (全局变量能在本代码块{ }外使用)
}
变量的使用
以scanf函数为例:
#define _CRT_SECURE_NO_WARNINGS 1 //使用#def...(必须加在原文件第一排),而不是scanf_s(部分编译器使用)使代码更通用
#include <stdio.h>
int main()
{
int num1 = 0; //不必为0,甚至可写为: int num1;
int num2 = 0;
int sum=0; //正确位置
scanf("%d%d",&num1,&num2); //使用 输入函数scanf(将变量放入指定地址);取地址符号&
//int sum=0; C语言规定变量要定义在代码块的最前面(老版本,新版本无此语法可任意放置)
sum=num1+num2;
printf("sum=%d\n",sum);
return 0;
}
变量的作用域与生命周期
变量的作用域(scope)
注:全局变量的作用域是整个工程!
例: test1.c
#include <stdio.h>
int a = 100;
test2.c
#include <stdio.h>
int main()
{
extern int a; //用extern(声明外部符号)让test1.c的全局变量在test2.c中使用
printf("%d is a num\n", a);
return 0;
}
变量的生命周期
局部变量的生命周期 : 进入作用域开始,出作用域结束
全局变量的生命周期 : 整个程序的生命周期(main)
常量
常量的分类
▪ 字面常量
▪ const 修饰的常变量
▪ #define 定义的标识符常量
▪ 枚举常量
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
enum LikeColour //枚举关键 - enum
{
red,
yellow,
blue, //'red,yellow,blue,black'为枚举常量
black //red-0, yellow-1, blue-2, black-3
}; // ';'不可缺少
int main()
{
2; //字面常量
int num=1; //变量
num=4; //变量可以改变赋值
const int num=1; //const(常属性)修饰的常变量(具有常属性,但本质为变量,即被锁定的变量)
//num=4; 无法可以改变赋值,会报错
#define MAX 10; //#define 定义的标识符常量(也可以放在{}外,与变量用法类似)
enum LikeColour I =red; //枚举常量的使用
I = blue; //变量改变赋值
//blue = 10 枚举常量不可改变,会报错
return 0;
}