变量|学习笔记

简介: 快速学习变量

开发者学堂课程【你的第一门 C 语言课变量】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/444/detail/5454


变量


目录:

一、变量名

二、变量命名的规则

三、关键字

四、数据类型

五、声明变量的语法


一、变量名

变量和常量是程序处理的两种基本数据对象。这一章先讲讲变量,学习任何东西之前,都应该先搞懂为什么需要它。变量是什么?它存在的意义是什么?变量主要起确定目标的作用。

把要让 CPU 处理的数据都存放到内存中,那么如果没有安排合理的位置,随意存放,后面再次调用这个数据的时候就找不到它了。所以变量的意义就是确立目标,提供存放的空间。为了确立目标就需要给数据命名。变量有了名字就可以通过名字来调用它里面的数据。


二、变量命名的规则

c 给变量起名是有规则的,C 语言对变量有一定的要求,需要遵循以下规则:变量名只能是英文字母 (A-Z, a-z) 和数字 (0-9) 或者下划线(_ )组成。其他特殊字符也不行,下划线用于连接一个较长的变量名。
第一个规则,第一个字母必须是字母或者下划线开头。也就是说这个变量名的第一个开头不能是数字。
第二个,变量名必须区别大小写。大小写不同会认为是不同的变量名。通常用小写命名变量。全大写表示符号常量名。
第三个,不能使用关键字来命名变量。


三、关键字

关键字就是 C 语言内部使用的名字。这些名字都具有特殊的含义。如果把变量命名为这个名字,那么 C 语言就识别不清楚了。传统的 C 语言有32个关键字。

图片8.pngC 语言历史悠久,随着不断的发展进行改善。设计一套编程语言就是设计一套规则。1999年 IOS 发布了 C99 标准,对 C 语言进行了很大的改进。C99 又增加了5个关键字。所以在 C99 之后就有37个关键字了。那么这37的关键字在命名变量时不能使用。到了2011年,IOS 发布了最新的 C11标准

图片9.png

这次加入了一些新的语言特征,同时 C11 标准又增加了7个关键字。就有44关键字了。命名变量是不用到这些关键字就可以了就可以了。C99 和 C11的差别并不大。大多数情况下都是可以和谐共处的。

 

四、数据类型

变量指定名字后还需要为变量指定坑的大小。就是指定该变量存放的数据类型。因为不同的数据的尺寸并不相同。如果每个数据坑都挖得过大会造成资源的浪费。

下面是基本数据类型:

char

-字符型,占用一个字节

int

-整型,通常反映了所用机器中整数的最自然长度//在不同的机器上长度是不一样的
float

-单精度浮点型

double

-双精度浮点型

 

五、声明变量的语法

数据类型 変量名

-int a  //int a 就说明 a 可以存放一个整型数据

- char b  //可存放一个字节

- float c  //就是在内存中找到一个单精度数据位置的大小,并名为为 c

- double d  //一个双精度浮点数据的大小

接下来看一个程序
#include

int main( )

{

int a;

char b;

float c ;

double d ;

//变量在声明之后就可以使用它,这4句是变量的声明,告诉编译器后续程序会用到这4个变量。a = 520;b = 'F';c = 3.14;d = 3.141592653;////等号表示赋值,表示把数据给到变量,整型给整型数据,字符型就给字符型数据。单引号为字符,双引号为字符串。单精度用于数据小的,双精度用于数据大的printf("鱼C工作室创办于2010年的%d\n", a);printf("I love %cishC.com!\n", b);printf("圆周率是: %.2f\n", c);printf("精确到小数点后9位的圆周率是; %11.9f\n", d);//printf函数是格式化输出函数。所谓格式化就是将不同的数据类型转化为字符串的形式,最后打印出来。

//%d表示为占位符,%c也是同样的道理。.2表示精确到小数点后两位。11表示占位宽度。.9同样表示精确位数。
return 0 ;

}

执行结果如下:

图片10.png

相关文章
10、pip换源加速下载的方式
10、pip换源加速下载的方式
10、pip换源加速下载的方式
|
1月前
|
数据采集 机器学习/深度学习 自然语言处理
从零训练一个 ChatGPT:用 PyTorch 构建自己的 LLM 模型
本文介绍如何使用PyTorch从零构建类似ChatGPT的大型语言模型,涵盖Transformer架构、数据预处理、训练优化及文本生成全过程,助你掌握LLM核心原理与实现技术。(238字)
250 1
|
25天前
|
弹性计算 数据可视化 异构计算
阿里云服务器购买之后怎么开具发票?发票抬头及申请流程及问题解答
购买阿里云服务器后,可登录用户中心进入发票管理页面申请发票。支持个人或企业抬头,可选电子或纸质发票。需先完成实名认证,根据订单勾选开票,流程简单便捷。常见问题包括抬头修改、税率6%起、电子发票可报销等。详见阿里云官方帮助文档。
|
3月前
|
机器学习/深度学习 人工智能 资源调度
MicroNAS:面向MCU的零样本神经架构搜索——论文阅读
MicroNAS是一种专为微控制器单元(MCU)设计的零样本神经架构搜索(NAS)框架,无需训练即可通过理论驱动的性能指标评估网络架构。相比传统NAS方法,其搜索效率提升高达1104倍,同时兼顾精度与硬件效率,适用于边缘计算场景。该框架结合神经切线核(NTK)条件数、线性区域计数及硬件感知延迟模型,实现快速、高效的架构搜索,为资源受限设备上的AI部署提供了新思路。
249 2
MicroNAS:面向MCU的零样本神经架构搜索——论文阅读
|
2月前
|
缓存 API Python
如何通过API获取拼多多商品详情数据?
注册开放平台账号,获取client_id与client_secret,调用鉴权接口换取access_token(有效期24小时)。通过GET请求查询商品详情,需传goods_id和access_token。响应包含商品名称、价格、销量及SKU库存等信息。注意处理code非0的错误,控制请求频率≤100次/分钟,建议指数退避重试。Python示例使用requests实现。
255 0
|
3月前
|
云安全 人工智能 自然语言处理
|
4月前
|
存储 消息中间件 分布式计算
zookeeper
ZooKeeper 是专为分布式系统设计的协调服务,提供一致性、可靠性与有序性支持,常用于服务注册、配置管理、分布式锁等场景。其核心基于 ZAB 协议保障数据同步与集群一致性,采用树形结构存储数据,并通过 Watcher 机制实现事件通知。架构上包含 Leader、Follower 和 Observer 三种角色,兼顾写一致性与读扩展性,是分布式系统的重要基础组件。
294 0
|
5月前
|
存储 人工智能 Java
java之通过Http下载文件
本文介绍了使用Java实现通过文件链接下载文件到本地的方法,主要涉及URL、HttpURLConnection及输入输出流的操作。
351 0
|
机器学习/深度学习 自动驾驶 算法
深度学习之因果推理与决策
基于深度学习的因果推理与决策是一个将因果推理理论与深度学习技术结合,旨在从数据中学习因果关系并基于此做出最优决策的领域。因果推理不仅关注变量之间的相关性,还侧重于发现变量之间的因果关系,而这些因果关系是决策系统做出有效决策的关键。
472 1