【C语言学习】01. 数据类型、常量、变量
数据类型
数据类型的分类:
-
基本类型
- 整型 int
- 浮点型 float
- 字符型 char
-
构造类型
- 数组 []
- 结构体 struct
-
指针类型 *
-
空类型 void
常量
常量是指在程序运行过程中,其值不发生变化的量。
常量的分类:
- 整型常量:100, 123, -100, 0
- 浮点型常量(也称实型):3.14, 0.123, -3.484
- 字符型常量:'a', 'b', '2'
- 字符串型常量:"a", "ab", "1c34"
符号常量
#define P 3+2 //符号常量
int main() {
int i = P*2; //3+2*2,符号常量P是直接替换的效果
printf("i=%d\n",i);
printf("i size=%d\n",sizeof(i));
char c = ' ';
printf("%d,%c",c,33);
return 0;
}
浮点型常量
表示浮点型常量的形式有两种:
- 小数形式:0.003
- 指数形式:3e-3
注意:e代表10的幂次,字母e(或E)之前必须有数字,后面的指数必须为整数
字符型常量
用单引号括起来的一个字符是字符型常量。如 'a', '1', ' '。
还有各种转义字符,如换行'\n'。
注意:"a", 'ab', " "是错误的字符型常量。
字符串型常量
字符串型常量是由双引号括起来的字符序列,例如:"Hello World!"。
注意:
- "a" 和 'a' 是不同的,不可以将字符串型常量赋给字符型变量。
- C语言中没有定义字符串型变量的关键字,用字符数组存储。
- C语言规定在每个字符串型常量结尾加一个字符串结束标志'\0',以便系统据此判断字符串是否结束。例如 "abc"在内存空间中实际上是占4字节。
变量
变量代表内存中具有特定属性的一个存储单元,它用来存放数据,即变量的值。变量的值在程序的执行过程中是可以改变的。
变量名实际上以一个名字代表一个对应的存储单元地址。编译、链接程序时,由编译系统为每个变量名分配对应的内存地址,从变量中取值实际上是通过变量名找到内存中存储单元的地址,并从该存储单元中读取数据。
C语言规定变量的命名,即标识符只能由字母、数字和下划线组成,并且第一个字符必须为字母或者下划线。
int i_1 = 1; //i_1即为变量
注意:字符型变量使用关键字 char
进行定义,一个字符型变量占用一个字节大小的空间。字符型变量存放的是字符的ASCII码值。
强制类型转换
整型数进行除法运算时,如果运算结果为小数,那么存储浮点数时一定要进行强制类型转换。
#include <stdio.h>
//强制类型转换
int main() {
int i = 5;
float f = i/2; // 左右操作数都是整型,做的是整型运算
printf("%f\n",f); // 2.000000
float k = (float)i/2; //进行强制类型转换
printf("%f\n",k); // 2.500000
return 0;
}
本文来自博客园,作者:hzyuan,转载请注明原文链接:https://www.cnblogs.com/hzyuan/p/17938930
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)