设为首页 加入收藏

TOP

c++ string 类 和 c 风格 string 的问题梳理
2023-07-23 13:30:54 】 浏览:26
Tags:string 风格

1. 互相转换:

  c++ --->  c :                      cppstr.c_str()

  c     --->  c++ :     string cppstr = string(cstr)

  打印时、cout 都可以打印、如果用 printf 等方法那需要 %s

2. c++ string 的方法:

  直接点出来,vs提示有多少是多少

3. c 风格 string 的操作:

  定义一个 c 风格串有两(三)种方法

  给个字符数组让编译器去计算应该有多大,然后把每个字符复制到数组中 (或者可以开个很大的数组,自己写一堆字符进去,然后末尾追加 '/0' )

  给个常指针指向串的地址、然后拿str1 不能去改这个串!这个串就是只读的了! 

不写长度、让编译器去推测,那么会多开一个空间放 \0

如果想把一个东西格式化后放入字符数组,可以用 sprintf 、但现在推荐使用安全版本、操作后会自动在末尾加 \0 

 假如偏偏不要 \0 会怎么样?

上一种写法编译器能发现,那咱们偷渡一下、发现果然就炸了、其实 c 库操作字符串的函数都需要拿 \0 去判断是否到头!!!

 

 

总结:C字符串一定是字符数组、但只有 末尾(或中间) 带有 ‘\0’ 的字符数组才称的上是C字符串

   C串的灵魂就在 \0 的处理!

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇02 线性表 | 数据结构与算法 下一篇驱动开发:通过Async反向与内核通..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目