我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C语言的变量与常量 字符字符串与转义字符详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C语言的变量与常量 字符字符串与转义字符详解

一.变量

1.1定义变量的方法

如图中所示,变量可被定义为各种数据类型,如int 整型 char字符数据类型,short短整型,float单精度浮点数,double双精度浮点数等等。一般在变量定义后,需给变量赋值,如图中对所有变量给与了0的赋值,这也是一个良好的代码习惯。

1.2变量的分类

变量分为局部变量和全局变量。

局部变量:定义在代码块内部的变量,一个大括号中所有代码便是一个代码块,局部变量只在代码块中存在和生效,如下图中这种情况

变量被定义a和第一个输出函数printf在同一个代码块中,所以输出函数可以成功的输出代码a的值0。但变量b被定义的代码块和第二个输出函数printf不在同一个代码块中,变量b只在其被定义的代码块中存在,在第二个输出函数printf所在的代码块中不存在,所以编译器会报错,未定义标识符b。

如果是上图这种情况,变量a的值是可以被输出的,因为输出函数printf仍在变量a所在的这个整体的代码块(大括号之中)。

如上的变量a与变量b,被定义在某一个代码块中的变量,即为局部变量。

全局变量:被定义在代码块之外的变量,但要保证在#include<stdio.h>之后才定义,作用域为全体范围,整个程序的作用域该变量均存在。 

如上图该程序的输出结果为10。但当代码块中出现和全局变量同名的变量时,全局变量的值会被覆盖,如下图。会将代码块中局部变量的值覆盖全局变量的值,但仅在该代码块中起到这样的效果,如果其它代码块中没有和全局变量同名的局部变量,仍以全局变量的值为该变量的值。

1.3变量的使用

先定义变量,然后变量可以参加加减乘除等运算,也可以使用printf输出函数打印该变量的值,或者使用scanf输入函数,从外部输入对该变量进行赋值。

输入该变量的值时候,要在该变量前面加&符号,&符号的意思是取地址,又叫取地址符号。

二.常量

C语言中常量分为字面常量(包括字符常量,const 修饰的常变量,#define定义的标识符常量,枚举常量四种常量。

2.1字面常量

字面常量即用数字和字符组成的常量,如下图所示。

 2.2 const修饰的常变量

如上图所示,对在定义一个变量的时候在前面加上const代表该变量是不可修改的。但该变量本质上还是作为一个变量存在,又被称为常变量。例如在定义数组的时候只能使用常量,假如使用了const修饰的常变量,大部分编译器会报错(因为在C99标准之前,变长数组,不允许用变量指定数组大小)。如下图所示,定义数组大小只可以用常量!!

 2.3#define定义的标识符常量

 

如上图所示可以用#define+常量名+具体大小的形式定义标识符常量,上图的MAX便是这么定义的,在代码习惯中一般用大写字母。

2.4 枚举常量

枚举的意思是可以一一列举,如生活中的性别(男性和女性),人种(黄种人,白种人和黑种人),这样种类比较少的常量可以用枚举类型,作为枚举常量。

定义枚举类型的时候如上图所示,枚举这种类型可能的取值就是枚举常量。枚举常量和枚举常量之前用逗号隔开,所有的枚举常量被放在一个大括号中,在该大括号的末尾用分号作为结束。 

三.字符和字符串

3.1 定义

由单引号引起的单个字符或者字母被成为字符,如'a'  'b'均为字符,由双引号引起的一串字符被成为字符串如"abc" "sfc"都被成为字符串,""也是字符串的一种,被成为空字符串。如下图所示,'a' '#'为字符,"abc","a","",均为字符串。

 3.2字符串的应用

可以将字符串放在在字符数组中,如定义一个字符数组 char arr1[]="abc";这里的arr为该字符数组的名称。但不能将字符串放在一个变量中,如char ch="abc";这样的形式是错误的。

字符串还可以用strlen函数去计算长度,但在使用strlen计算字符串长度之前,去引用头函数#include<string.h>。在计算字符串长度的时候每一个字符是1长度,但转义字符也是一个字符,整体算一个长度。在用strlen函数计算长度的时候'\0'为终止的位置,字符串后自带一个'\0',字符后需要人为添加'\0',否则在计算字符长度的时候,会一直到内存中出现'\0'的时候才会停止,这样的话字符的长度便成为了一个随机数,显然是不行的,所以要人为添加'\0'。

常用的转义字符如上图,\ddd的意识为后面跟一个,两个或者三个8以下的数字时,需要将整体八进制转换为十进制,再根据ASCII码值输出ASCI码值对应的字符。\xdd的意思为后面\x跟着两个十六进制的数字,整体为一个转义字符,将十六进制的转化为十进制,再输出其对应的字符。

3.3转义字符

即在C语言中,有时间一些字符的意思可能被编译器曲解,所以这时候需要用转义字符来转变原来的意思,得到我们想要的意思。

例如在上图中,我们想要打印test.c这个文件的位置,但结果缺不尽人意,因为两个\t被识别为转义字符,意识是缩进四格。\104被识别为\DDD的形式,104被当作一个八进制的数字,在转化为十进制的数后输出了其ASCII码值对应的字符——大写字母D。举例,如下图所示\DDD和\XDD的情况。

如上图所示,\DDD先将其转化为十进制,\071转化为十进制是57,而57对应的ASCII值对应的字符为9,所以打印输出了9.\XDD同理先将转化为十进制,\x62转化为10进制是98,而98对应的ASCII值对应的字符为b。故printf函数打印了小写字母b。

如果不想造成上上上图的困扰,正确的打印该文件在计算机中的存储位置,这时候就需要在每个\再加一个\,对其进行转移,便能正确输出了,如下图所示。

四.注释

注释分为C注释方式和C++注释方式。//C99之后引入的注释方式 ---> C++的注释风格

上图为C语言的注释风格,缺陷是不能进行嵌套注释,会在遇到第一个*/时候注释停止。

上图是C++语言的注释风格,//后整行皆为注释内容,也是现在比较流行的注释方式。 

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

C语言的变量与常量 字符字符串与转义字符详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

c语言字符串变量如何定义

C语言中,字符串变量可以通过以下方式定义:1. 使用字符数组(char array):可以使用字符数组来存储字符串。字符数组以null字符'\0'结尾,用于表示字符串的结束。例如:```cchar str[20] = "Hello, Wor
2023-09-08

c语言字符串常量如何定义

在C语言中,字符串常量可以使用双引号括起来来定义。例如:char* str = "Hello, World!";上述代码中,变量`str`被定义为一个指向字符串常量的指针。字符串常量`"Hello, World!"`是一个以空字符结尾的
2023-10-26

C语言字符串替换:字符,字符串,字符数组详解

在C语言中,字符串是由字符数组表示的。一个字符串是一个以null字符('\0')结尾的字符数组。字符替换:要替换字符串中的某个字符,可以使用循环遍历字符串的每个字符,然后用新的字符替换需要替换的字符。例如,下面的代码将字符串str中的所有字
2023-08-15

c语言中字符串变量如何定义

在C语言中,字符串变量可以通过以下几种方式定义:1. 使用字符数组来定义字符串变量:```cchar str[100]; // 定义一个长度为100的字符数组,用于存储字符串```这种方式定义的字符串变量可以直接使用字符串赋值运算符`=`进
2023-09-29

怎么解析C语言的常量和字符串

怎么解析C语言的常量和字符串,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。常量种类C语言中,我们常使用的常量有以下几种:字面常量const常变量#define定
2023-06-22

C语言字符型变量如何定义

C语言字符型变量可以通过使用关键字char来定义。定义字符型变量的语法如下:```cchar 变量名;```例如,下面的代码定义了一个名为ch的字符型变量:```cchar ch;```可以将字符型变量初始化为一个字符,如下所示:```cc
2023-08-18

数字、字符、字符串? | C++ 与 Python 中的常用转换函数

计算机底层是一堆逻辑电路,记录信息只能以数值的形式。因此对于一个字符 a ,计算机记录其为值 97 。 这个值与字符的对应关系是人们约定好的,这里使用的对应表为 ASCII Table 。
C++Python函数2024-12-14

C语言常量和字符串是什么

C语言常量是指在程序运行期间不会改变其值的数据,包括整型常量、浮点型常量、字符常量和枚举常量等。字符串是由一系列字符组成的字符数组,以空字符'\0'作为结束标志。在C语言中,字符串常常用双引号括起来表示,如"Hello, World!"。字
2023-08-18

Python变量和字符串详解

几个月前,我开始学习个人形象管理,从发型、妆容、服饰到仪表仪态,都开始做全新改造,在塑造个人风格时,最基础的是先了解自己属于哪种风格,然后找到参考对象去模仿,可以是自己欣赏的人、明星或模特等,直至最后去创新,形成自己独特的个人风格。 学习P
2022-06-04

c++中字符串变量怎么定义

c++ 中定义字符串变量使用 string 数据类型,例如 string name; 初始化通过赋值运算符,如 name = "john doe"; 获取值用 C++ 中字符串变量的定义字符串变量的定义在 C++ 中,字符串变量是用来存
c++中字符串变量怎么定义
2024-05-06

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录