当前位置: 首页 > news >正文

燕窝网站怎么做软文吧

燕窝网站怎么做,软文吧,济宁市兖州区建设局网站,网站建设教程小说简介🦄个人主页:修修修也 🎏所属专栏:C语言 ⚙️操作环境:Visual Studio 2022 目录 一.字符类型和字符数组(串)简介 1.ASCII 2.定义,初始化,使用 1>字符的定义及初始化 2>字符串的定义及初始化 二.…

🦄个人主页:修修修也

🎏所属专栏:C语言

⚙️操作环境:Visual Studio 2022


目录

一.字符类型和字符数组(串)简介

1.ASCII

2.定义,初始化,使用

1>字符的定义及初始化

2>字符串的定义及初始化

二.字符

1.字符的输入与输出

2.常见字符操作函数

   1>字符大小写转换

   2>字符类型判断

三.字符串

1.字符串的输入与输出

2.常见字符串操作函数

1>字符串拷贝

2>字符串长度

3>字符串比较

4>字符串连接与分割

5>字符串搜索与定位


一.字符类型和字符数组(串)简介

1.ASCII

🌱先来看看百度百科对ASCII的定义d3df34cb0b4a4d76bd40712577624c44.png

🌱而ASCII的产生原因是:      

        在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。

🌱ASCII的内容:ec32c720fb3144b0bc80c82dbcfcc9a5.png


2.定义,初始化,使用

1>字符的定义及初始化

        因为计算机使用数字编码来处理字符,即用特定的整数表示特定的字符。我们最常用的编码就是ASCII编码。我们先定义一个名叫ch的字符变量,再给它赋值为’A‘,如:

char ch;
ch='A';

         在C语言中,用单引号括起来的单个字符被称为字符常量。编译器一发现’A‘,就会将其转换成相应的代码值。因此字符数据的初始化中,单引号必不可少。

        实际上,字符是以数值形式储存的,所以也可以使用数字代码值来赋值,如:

char ch=65;

        因为虽然65是int类型,但是它在char类型能表示的范围内,所以将其赋值给ch没问题。


2>字符串的定义及初始化

        字符串是一个或多个字符的序列,如下所示:

"Hello world"

        注意,双引号不是字符串的一部分。双引号仅告知编译器它括起来的是字符串,正如单引号用于标识单个字符一样。

char arr[15]="Hello world";

        实际如上字符串在内存中的存储方式是:

112e0936e7e449f0a540620019cb6ea1.png

        该字符数组的末尾位置的字符\0是空字符,C语言用它标记字符串的结束。空字符不是数字0,它是非打印字符,其ASCII码值是(或等价于)0。C中的字符串一定以空字符结束,这意味着数组的容量必须至少比待存储字符串中的字符数多1。否则如果因为容量不够漏存了\0,将会导致系统出现一些bug。如下bug就是因为数组长度不够存储\0导致的:

f48fcf8c6bbf4c32b9c35b3fba801170.png

        因为C语言大多数的库函数在处理字符串时都会默认将\0作为字符串的结尾,如我们后面会提到的:strlen()函数(字符串长度计算函数),strcpy()函数(字符串拷贝函数)等大多都是以识别出\0来作为程序的结束标志,因此对于字符串来说,\0的存在至关重要。但是我们在定义和初始化字符串时,却不用特意在字符串的末尾安放\0,因为当字符数组容量允许时,计算机会默认帮助我们在末尾添上\0的。而在这点上字符串常量也是同理,如:

b9c1cb7e7a9a46ce85e2bb156888ee3f.png

         可以看到,打印的结果没有出现之前的bug现象,因此即便是字符常量,计算机也会默认帮助我们在结尾添上\0。


二.字符

1.字符的输入与输出

字符的输入常用:scanf()函数

getchar()函数2a6e76ca025a4bca90bf7be8930e5979.png

字符的输出常用:printf()函数

putchar()函数b3ecac927b544339a19b16bc411f9e1c.png


2.常见字符操作函数

   1>字符大小写转换

        方法一:使用 `toupper` 和 `tolower` 函数,这两个函数分别将字符转换为大写和小写形式。

        方法二:使用字母的ASCII码值特性,给大写字母+32转换成小写字母,给小写字母-32转换成大写字母。

        方法三:使用位运算,将字符的 ASCII 码与 32(二进制为 0b00100000)进行按位异或运算,即可将小写字母转换为大写字母,反之亦然。例如,`'a' ^ 32` 的结果为 `'A'`,`'A' ^ 32` 的结果为 `'a'`。如:cc90aa3c7fd04316bd0a51f38d5770ea.png

        有关大小写字母的三种转换方式有感兴趣的朋友可以移步我的这篇博客:【C语言】字母转换大小写的三种方法icon-default.png?t=N7T8https://blog.csdn.net/weixin_72357342/article/details/130932158?spm=1001.2014.3001.5502

        里面有非常详细的toupper()函数和tolower()函数的参数解读及使用详解同时还包含方法二和方法三的具体实现步骤。因此这篇博客中对该部分内容就不赘述了。


2>字符类型判断

方法一:库函数判断

字符类型判断相关库函数

序号函数名函数作用
1        isdigit()判断字符是否为数字
2isalpha()判断字符是否为字母
3isalnum()判断字符是否为数字或字母
4isspace()判断字符是否为空格字符
5isupper()和 islower()分别用于判断字符是否为大写字母和小写字母
6iscntrl()判断字符是否为控制字符
7isprint()判断字符是否为可打印字符
8ispunct()判断字符是否为标点符号

方法二:使用ASCII数值区间或字符区间判断,如:

char ch='c';
int letter=0;
if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z'))letter++;

上述代码就是使用字符区间来判断的例子。

方法三:当然我们也可以直接使用ASCII码值来进行判断,如:

char ch='s';
int letter=0;
if((ch>=65&&ch<=90)||(ch>=97&&ch<=122))letter++;

        有关字符类型的三种判断方式有感兴趣的朋友可以移步我的这篇博客:

【C语言】字符类型判断的三种方式icon-default.png?t=N7T8https://blog.csdn.net/weixin_72357342/article/details/130956167?spm=1001.2014.3001.5501

        里面有非常详细的C语言字符判断库函数详解及其使用,同时还包含方法二和方法三的具体实现步骤。因此这篇博客中对该部分内容就不赘述了,有兴趣的可以去看看。


三.字符串

1.字符串的输入与输出

字符串的输入常用scanf()函数,gets()函数,fgets()函数:76b349d4148c40c78ad4a951643a4fbf.png

字符串的输出常用printf()函数,puts()函数,fputs()函数:0e8d1bf975564c399ddbfa6a3bcf7607.png


2.常见字符串操作函数

1>字符串拷贝

strcpy()函数

函数详解见文末文章

strncpy()函数


2>字符串长度

strlen()函数

函数详解见文末文章


3>字符串比较

strcmp()函数

strncmp()函数


4>字符串连接与分割

字符串连接:

strcat()函数

strncat()函数

字符串分割:

strtok()函数


5>字符串搜索与定位

strchr()函数

strrchr()函数

strstr()函数



结语

希望这篇关于字符与字符串的博客能对大家有所帮助,欢迎大佬们留言或私信与我交流.

学海漫浩浩,我亦苦作舟!关注我,大家一起学习,一起进步!

相关文章推荐

【C语言】strlen()函数

【C语言】strcpy()函数


C语言字符串库函数思维导图:

http://www.hengruixuexiao.com/news/28150.html

相关文章:

  • 网站如何调用手机淘宝做淘宝客淘宝宝贝排名查询
  • 律师在哪个网站做竞价是什么工作
  • 重庆网上房地产查询seo推广公司排名
  • 昆明网站建设织梦网站seo视频狼雨seo教程
  • 有没有做面粉美食的网站潍坊关键词优化软件
  • 临沂做百度网站软件公司公司网址怎么注册
  • 网站模板被抄袭怎么办外链系统
  • 做推广有什么好网站seo网站推广怎么做
  • 做家乡特产的网站宁波网站推广大全
  • 工程公司年会发言稿seo课程总结怎么写
  • ASP.NET实用网站开发 课后答案网络推广外包公司哪家好
  • 东道设计公司怎么样aso优化哪家好
  • 北京网站建设 云智互联如何把网站推广出去
  • 南京做网站建设的公司排名新冠疫情最新消息今天
  • 网站代码优化目的石家庄网站建设公司
  • 济南网站建设泰观网络外链怎么打开
  • wordpress实现自动重定向谷歌优化排名哪家强
  • 完善的seo网站互联网公司网站模板
  • 之梦做的网站后台修改栏目描述东莞网站建设seo
  • 网站建设联盟如何宣传推广自己的产品
  • 关于政府网站建设的研究报告成都网络推广外包公司哪家好
  • 做网站需要什么cailiao山东关键词快速排名
  • 阿里云1核2g服务器能建设几个网站域名注册服务网站哪个好
  • 电子商务网站设计原理实践报告上海有什么seo公司
  • 小程序注册认证流程孔宇seo
  • 自己买个服务器有什么用seo推广专员
  • 网站建设排名优化技巧google搜索引擎入口下载
  • 做外贸的国际网站有哪些站长工具爱站网
  • 泰州做网站优化百度竞价点击软件奔奔
  • 珠宝行业做网站的好处seo产品是什么意思