【C语言】初识C语言之变量和常量

学习目标:

  • 数据类型
  • 变量的定义
  • 全局变量和局部变量
  • 变量的作用域和生命周期
  • 常量
  • 字符串+转义字符+注释

学习内容:

一、数据类型:计算机语言必须有能力描述生活中的问题,如书架上有十本书。

#include <stdio.h>
int main()
{
   	//类型的使用:类型名 变量名/空间名 = 初值;
	int Book = 10;//开辟一块内存空间,空间名为Book,把10存入空间内
	printf("%d",Book);
	//字符数据类型---单引号引起的内容
	char ch = 'a';
	printf("%c",ch);
	//短整形---整数
	short int num = 10;
	//整型---整数
	int age = 20;
	//短整形 short int、长整型long int、更长的整型long long int,其中int都可以省略
	//整型有多种不同类型的区别在于空间大小,而打印格式都是%d
	//单精度浮点型---小数
	float weight = 55.5;
	//双精度浮点型---小数
	double d = 0.0;

	return 0;
}

注意:
%d打印整型十进制数据,%c打印字符格式的数据
%f打印单精度浮点数(小数),%p以地址的形式打印
%lf打印双精度浮点数


问题1:每一种类型的大小是多少?

#include <stdio.h>
int main()
{
   
	//sizeof关键字--操作符
	printf("%d\n", sizeof(char));//1byte
	printf("%d\n", sizeof(short));//2byte  可存的最大值2^16-1
	printf("%d\n", sizeof(int));//4byte	 可存的最大值2^32-1
	printf("%d\n", sizeof(long));//4/8byte   	
	printf("%d\n", sizeof(long long));//8byte  可存的最大值2^64-1
	printf("%d\n", sizeof(float));//4byte
	printf("%d\n", sizeof(double));//8byte

	return 0;
}

解读:
1、sizeof():计算数据类型或者变量所占空间的大小,单位:字节byte
2、sizeof求变量或类型的空间大小外,也可以求数组元素个数
3、C语言标准规定:sizeof(long) >= sizeof(int),故long类型所占字节因计算机而异。
4、同一种类型的有符号和无符号所占字节数相同

问题2:为什么出现这么多种整型类型?

原因:类型的选择性多,对空间的利用率更高。
如,存一个年龄的数据,选择short类型开辟的空间需要2字节,选择int类型开辟的空间需要4字节,故选择合适的类型,有利于节省空间。
不同类型创建的变量,具有不同的空间大小,即存放的数据最大值不同。

问题3:C语言有没有字符串类型?

答:没有,C语言使用数组来存放字符串


二、变量的定义
变量和常量
常量:如,圆周率、血型、身份证号码等,不可以被改变的量
变量:如,年龄、工资、体重,可以被改变的量

#include <stdio.h>
int main()
{
   
	//变量的定义
	short age = 18;//向内存申请2字节(16bit),用来存放18
	float weight = 95.6f;
	char ch = 'w';

	age = age + 1;
	weight = weight - 10;

	printf("%d\n", age);//由此可知,变量age,变量weight是可变的
	printf("%f\n", weight);
	return 0;
}

解读:
1、变量的定义,即创建一个变量:①类型 变量名 = 初始值;②类型 变量名;推荐初始化
2、float和double类型,显示时,默认小数点后6位
3、float weight = 95.6;含义:向内存申请4个字节的空间,即创建了一个空间,名为weight,存放小数95.6,(编译器小数默认为double类型)
4、此时会出现警告:“初始化”:从“double”到“float”截断,存入float中会发生精度丢失,解决方法:float weight = 95.6f
5、输出格式:%d整型、%f单精度浮点型、%lf双精度浮点型、%c字符型、%s字符串


三、全局变量和局部变量
1、变量的分类:全局变量和局部变量

#include <stdio.h>

int a = 100;//全局变量:大括号{}外部定义的变量

int main()
{
   
	int a = 10;//局部变量:大括号{}内部定义的变量,局部变量不一定放在主函数内部
	printf("%d\n", a);

	return 0;
}

注意:当局部变量和全局变量名字冲突时(相同时),局部变量优先,不建议全局变量和局部变量名相同

#include <stdio.h>
int main(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值