文章目录

  • 变量
  • 常量
  • 字符串
  • 转义字符

一、变量

1.变量的命名规则:

只能由字母(包括大写和小写)、数字和下划线( _ )组成。
不能以数字开头。
长度不能超过63个字符。
变量名中区分大小写的。
变量名不能使用关键字。

2.变量的分类:

变量可以分为局部变量以及全局变量

代码如下:

#include <stdio.h>
int global = 2019;//全局变量
int main()
{int local = 2018;//局部变量int global = 2020;//局部变量printf("global = %d\n", global);return 0;
}

在这一段代码中我们可以看到,创建的全局变量与局部变量同名,那么打印出来global的值是2019还是2020呢?运行结果如下:

我们可以看到,运行结果global=2020。也就意味着:当局部变量和全局变量同名的时候,局部变量优先使用。

3.变量的作用域和生命周期

作用域:

作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用的。而限定这个名字的可用性的代码范围就是这个名字的作用域。

局部变量的作用域:

上面这个例子就很好的证明了局部变量a的作用域仅仅只局限于花括号这个局部范围内,出了这个区域就不可以访问了。

全局变量的作用域:整个工程。

也就意味着:当全局函数创建完成后,在程序中的任何一个地方都可以访问全局变量。

生命周期:

变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段

1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
 2. 全局变量的生命周期是:整个程序的生命周期。

二、常量

常量一般分为以下几种:

1.字面常量
2.const 修饰的常变量
3.#define 定义的标识符常量
4.枚举常量

代码如下:

        注1:上面例子上的 pai 被称为 const 修饰的常变量, const 修饰的常变量在C语言中只是在语法层面限制了变量 pai 不能直接被改变,但是 pai 本质上还是一个变量的,所以叫常变量。

        注2:枚举常量的默认值是可以更改的,也就是说在定义枚举常量的时候可以给其赋初始值。

三、字符串

"Hello World.\n"


这种由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串。字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。

关于\0还需要强调以下的问题,见如下代码:

         注:字符串的末尾会自动添加\0,而逐个字符输入数组的情形,则需要在数组的最末位添加\0,否则数组会一直往后走直到找到\0为止,而导致像数组arr2这样打印出一些未知内存存放的内容。

四、转义字符

转义字符——转变原来的意思

转义字符 释义
\? 在书写连续多个问号时使用,防止他们被解析成三字母词
\' 用于表示字符常量'
\“ 用于表示一个字符串内部的双引号
\\ 用于表示一个反斜杠,防止它被解释为一个转义序列符
\a 警告字符,蜂鸣
\b 退格符
\f 进纸符
\n 换行
\r 回车
\t 水平制表符
\v 垂直制表符
\ddd ddd表示1到3个八进制数字。如: \130 表示字符X
\xdd dd表示两个十六进制数字。如: \x30 表示字符0

\? : ' ??) '在早些时候被叫做三字母词,在有些编译器下会打印成 ' ] ',在?前加上\可以防止这种情况发生,让?不被解析为三字母词中的问号

\' :当三个'连用时,第二个'会和第一个'构成一对单引号,若想打印出第二个',就要在第二个'前加上\,\"也是同样的用法。

\\ :在第二个\前再加上一个\,可以防止第二个\被当成其他转义字符的一部分,可以正常打印出\t,\n等内容,此用法最常用于打印网址等内容。

\b : 例如在打印字符串时,\b可以让\b之后的内容都向前退一格,而使\b前面的一个字符被覆盖掉。

\t / \v : 让内容空出指定的空格数\行数。

C语言入门之变量、常量、字符串、转义字符相关推荐

  1. 初识C语言(1)(2)(3)(4) C语言入门 保姆级教程 变量 常量 字符串 转义字符 操作符 关键字 字符串 指针 函数 结构体 数组 选择语句 循环语句

    一.如何写C语言代码 1.编译器 2.创建项目 3.创建源文件 4.写代码 5.编译+链接+运行 项目名字不要汉语,不要特殊字符,不要加空格,项目路径一般为你想要的路径 C语言中,一般创建.c源文件, ...

  2. ES6变量常量字符串数值

    [转]ES6之变量常量字符串数值 ECMAScript 6 是 JavaScript 语言的最新一代标准,当前标准已于 2015 年 6 月正式发布,故又称 ECMAScript 2015. ES6对 ...

  3. Go语言逆向技术:常量字符串

    摘要:Go语言源代码编译成二进制文件后,源代码中的字符串存放在哪里?是如何组织的? 本文分享自华为云社区<go语言逆向技术之---常量字符串解密>,作者:安全技术猿. Go语言源代码编译成 ...

  4. 2020-10-14Go语言数据类型和变量常量

    Go语言数据类型 在Go编程语言中,数据类型用于声明函数和变量 数据类型的出现就是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用有限的的计算机内存 ...

  5. 磨刀不误砍材工 - Java的基础语言要素(从变量/常量切入,看8种基本数据类型)

    变量与常量是一个Java程序组成的重要部分. 我们可以将变量与常量理解为数据的载体,而从名称上我们也可以看出二者的不同: 常量代表不能改变的数据值,而变量的值则存在可变性. 在我们回顾Java中的关键 ...

  6. C语言学习笔记—P2(<C语言初阶>+<字符串+转义字符+注释>+图解+题例)

    目录 1.变量的使用 2. 变量的作用域和生命周期 3. 常量 4. 字符串 5. 注释 后记:●由于作者水平有限,文章难免存在谬误之处,敬请读者斧正,俚语成篇,恳望指教!               ...

  7. C语言入门·定义变量及类型转换

    目录 定义变量 1.整型 int  .long int.long long int 2.字符型和字符串型 char 3.浮点型 float double 定义常量 局部变量和全局变量 混合运算 重要类 ...

  8. go语言逆向技术之---常量字符串解密

    [摘要]go语言编译出来的二进制文件中,字符串数据是如何存放的,逆向时如何快速和准确的识别出源代码中定义的字符串,本文给你解密. **Go语言源代码编译成二进制文件后,源代码中的字符串存放在哪里?是如 ...

  9. c语言 字符串 枚举类型,C语言入门 — 枚举类型

    1.C语言入门 - 枚举类型,枚举类型的关键字是enum, enum是用来定义一组整型数值,其实定义模型如下: enum { 常数名称1 = 0, //起始值取0,这里的值可以为0,正数,负数. 常数 ...

最新文章

  1. 推荐一些冷门但是超级实用的工具
  2. java版b2b2c社交电商spring cloud分布式微服务(七)springboot开启声明式事务
  3. 邮件发送---在.net2003和2005中
  4. u-boot移植随笔:关于u-boot引导内核出现“Error: unrecognized/unsupported machine ID (r1 = 0x33f4fee8)”的问题
  5. python模拟登录获取Cookie
  6. “生命游戏之父”因新冠肺炎逝世,回顾数学顽童的一生
  7. 三级联动(ajax)
  8. 三维重建之环境搭建1-VS2017安装
  9. Python中显示图片
  10. html视频怎么添加封面,快影视频封面怎么添加文字标题
  11. java jersey使用总结_jersey Java Jersey配置
  12. hbase shell命令行下backspace键无效解决办法
  13. CSS制作移动动画效果
  14. monocle安装不成功 想尽各种办法
  15. ICPC 山东省省赛刷题 第十一届山东省大学生程序设计竞赛 ACM省赛 牛客 DGHM题
  16. 通过小狼毫/rime输入法在飞书中输入Tex/Latex公式的效果-2
  17. 详细介绍 BSD 开源协议
  18. 5G与AI, 浅谈(未完待续。。。)
  19. 【问题记录】防止mimikatz获取到明文密码
  20. 快速获取网站历史数据

热门文章

  1. 逻辑学三大定律是什么?
  2. NET 5连mysql数据库遇到的问题-1252;PublicKeyToken=cc7b13ffcd2ddd51
  3. hibernate中hbm.xmlmany-to-oneone-to-many中一些属性详解
  4. 测试用例设计——如何提高测试覆盖率
  5. 探秘vue核心之虚拟DOM与diff算法
  6. centos6关闭防火墙
  7. SCI 文章被拒是一种怎样的体验? - 易智编译EaseEditing
  8. 2023看得见的未来:数据中心行业十大发展趋势
  9. 如何引领万亿休闲零食市场新消费浪潮?三只松鼠提供了一种思路
  10. 《程序分析:开胃菜》概览