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

学习字符串

字符串就是在""里面写任意字母、数字、中文,或者不写都是字符串

(char既可以表示字符,也可以表示一个字节的整数)

1.定义字符串的两种方式

1)利用字符数组定义字符串

char str1[4] = "abc";//这里的长度要写4,因为要给\0留出位置(这一行实际上就是字符数组的表示)
printf("%s\n", str1);

细节1:在底层,实际存储的时候,C语言还是会帮我们把字符串“abc”转化为‘a’‘b’‘c’‘\0’进行保存,写成{'a','b','c','\0'};,\0是结束标记

细节2:数组的长度,要么不写,如果要写的话,记得要把结束标记的空格给预留出来,当然长度写得很大,只是多出来的空间浪费了

细节3:通过这种方式定义的是可以修改内容的

例如:

2)利用指针定义字符串

char* str2 = "abcd";
printf("%s\n", str2);

细节1:在底层,实际存储的时候,C语言还是会帮我们把字符串“abc”转化为‘a’‘b’‘c’‘\0’进行保存,写成{'a','b','c','\0'};,\0是结束标记

细节2:利用指针定义字符串,会把底层的字符数组放在只读常量区

只读常量区的特点:内容不可以修改,但里面使用的字符串可以复用,但是注意,是字符串里面的内容不能修改,但我可以创建一个新的字符串进行记录新的内存地址,即修改指针,

比如:

char* str = "abc";
printf("%s\n", str);
//这是修改了内存地址,是可以的
str = "aaa";
printf("%s\n", str);

验证:

练习:

2.string常见函数

strlen

获取字符串的长度(len:长度)

strcat

拼接两个字符串

strcpy

复制字符串(cpy:copy缩写)

strcmp

比较两个字符串(cmp:compare缩写)

strlwr

将字符串变成小写(lwr:lower缩写)

strupr

将字符串变成大写(upr:upper缩写)

3.练习

练习1优化:

http://www.xdnf.cn/news/1488151.html

相关文章:

  • NW506NW507美光固态闪存NW525NW539
  • AI时代的软件开发革命:吴恩达关于快速工程的深度思考
  • WebGL2初识
  • 开源 C++ QT Widget 开发(十三)IPC通讯--本地套接字 (Local Socket)
  • 【Flink】Flink Runtime 架构设计
  • LangChain实战(二十一):构建自动化AI客服系统
  • 蓓韵安禧DHA孕期友好配方:纯净营养安心孕育健康
  • 自然语言处理 基于神经网络的词向量转化模型word2vec
  • GitHub App 架构解析与最佳实践
  • [C/C++学习] 6.弹跳小球(B)
  • 机器学习入门实践:加州房价预测从 0 到 1 全过程
  • Altium Designer(AD24)新建原理图文件的几种方法
  • 性能剖析工具火焰图介绍与实战demo
  • 系统广告拦截工具:一键关闭烦人弹窗
  • GitHub 热榜项目 - 日榜(2025-09-07)
  • 力扣1210. 穿过迷宫的最少移动次数 详解
  • 【数学建模】在烟雾导弹遮蔽模型中的实际参考文献
  • 数据结构:顺序表与链表
  • VBA之Word应用第四章第二节:段落集合Paragraphs对象(二)
  • Vue2.x核心技术与实战(六)-Vuex
  • Ubuntu中如何进入root用户
  • LeetCode 几道 Promises 和 Time 的题目
  • 论文阅读:ICLR 2021 BAG OF TRICKS FOR ADVERSARIAL TRAINING
  • 初识Vue
  • nvidia 的 PTX 有多少个?
  • win10(三)视频剪裁
  • Balabolka:免费高效的文字转语音软件
  • unsloth 笔记:从最近的检查点继续微调
  • Apache EnumUtils枚举工具类
  • 计算机⽹络及TCP⽹络应⽤程序开发