社区
C++ 语言
帖子详情
char* str = "abcd"; char* tmp; strcpy(tmp, str); 这样的语句是不是不太好?
william624
2017-12-06 06:52:04
因为在调用strcpy之前没有为tmp开辟空间。
...全文
236
3
打赏
收藏
char* str = "abcd"; char* tmp; strcpy(tmp, str); 这样的语句是不是不太好?
因为在调用strcpy之前没有为tmp开辟空间。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
赵4老师
2017-12-07
打赏
举报
回复
其实电脑开机后物理内存的每个字节中都有值且都是可读写的,从来不会因为所谓的new、delete或malloc、free而被创建、销毁。区别仅在于操作系统内存管理模块在你读写时是否能发现并是否采取相应动作而已。操作系统管理内存的粒度不是字节而是页,一页通常为4KB。
paschen
版主
2017-12-06
打赏
举报
回复
没有初始tmp指针,该指针是一个随机值,指向一个随机的位置,也就是说的野指针,使用可能导致程序崩溃
ooolinux
2017-12-06
打赏
举报
回复
除非故意利用缓冲区溢出搞恶意代码。
大尾巴猫
2017-12-06
打赏
举报
回复
根本就是错的,不是好不好的问题。原因你自己也说了,没给指针开辟空间
str
ing类【万字详解,包括认识,介绍,使用,模拟实现】
find + npos(重点): 从字符串pos位置开始往后找字符c,返回该字符在字符串中的位置。empty (重点): 检测字符串释放为空串,是返回true,否则返回false。rfind :从字符串pos位置开始往前找字符c,返回该字符在字符串中的位置。resize (重点) :将有效字符的个数该成n个,多出的空间用字符c填充。operator+= (重点): 在字符串后追加字符串
str
。size(重点): 返回字符串有效字符长度。c_
str
(重点) :返回C格式字符串。
从零学STL:
str
ing类常用接口一篇吃透
本文介绍了C++标准模板库(STL)的基本概念和
str
ing类的使用方法。STL包含容器(如vector、
str
ing)、迭代器和算法三部分,极大简化了C++开发。重点讲解了
str
ing类的常见操作:构造、容量管理(size/resize/reserve)、访问遍历(operator[]/迭代器/范围for)、修改(append/+=)和查找(find/rfind)等功能。同时对比了C风格字符串与
str
ing类的区别,并详细说明了auto关键字和范围for循环在STL遍历中的应用。文章还提供了
str
ing类
C++:
str
ing类
1.字符串是表示字符序列的类2.标准的字符串类提供了对此类对象的支持,其接口类似于标准字符容器的接口,但添加了专门用于操作单字节字符字符串的设计特性。3.
str
ing类是使用
char
(即作为它的字符类型,使用它的默认和分配器类型关于模板的更多信 息,请参阅basic_
str
ing)。4.
str
ing类是模板类的一个实例,它使用
char
来实例化模板类,并用
char
_traits和allocator作为的默认参数根于更多的模板信息请参考。5.
指针练习题(字符逆序、字符串左旋、
str
len实现、调整奇数偶数顺序)
思路:字符串数组的长度,最大为10000,可以设置为10001,因为10000个有效字符+1个\0,然后输入字符串,用gets(),因为scanf()遇见空格会结束当输入字符串的时候,就调用函数,函数参数为字符串数组,先计算字符串数组的长度,然后用指针进行数组中字符的交换,当左边长度小于右边的时候,用指针进行数组中的交换,别忘了要缩小范围。
C++
Str
ing
C语言中,字符串是以'\0'结尾的一些字符的集合,为了操作方便,C标准库中提供了一些
str
系列 的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户 自己管理,稍不留神可能还会越界访问。在OJ中,有关字符串的题目基本以
str
ing类的形式出现,而且在常规工作中,为了简单、方便、 快捷,基本都使用
str
ing类,很少有人去使用C库中的字符串操作函数。
C++ 语言
65,214
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章