社区
C++ 语言
帖子详情
memcpy()拷贝有没有最大限制?
hundlom
2005-06-23 11:05:24
Linux系统下:
memcpy()拷贝有没有最大限制?STL中string有没有长度限制?那strncpy()呢?
谢谢^_^
...全文
1284
12
打赏
收藏
memcpy()拷贝有没有最大限制?
Linux系统下: memcpy()拷贝有没有最大限制?STL中string有没有长度限制?那strncpy()呢? 谢谢^_^
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
foochow
2005-07-13
打赏
举报
回复
顶
whatsouta
2005-07-13
打赏
举报
回复
注意不要大到那个*des 指向的内存和*src指向的内存重叠,不然你就麻烦了,还不知道是怎么死的。
llf_hust
2005-07-13
打赏
举报
回复
up
oyljerry
2005-07-13
打赏
举报
回复
应该受操作系统,内存的影响
hundlom
2005-07-13
打赏
举报
回复
ss
hundlom
2005-07-13
打赏
举报
回复
想放分也没多少人响应,,,好。结帐
flash_sword82
2005-07-13
打赏
举报
回复
呵呵,既然要放分,想必楼主已经知道答案了吧。而且大家都说的很清楚了啊。受限制是一定的,它的参数要肯定要受到实际环境的限制。可以的话你去看看源代码就知道了,这些只不过是一些函数或实现机制而已,里面都是用算法实现的,到不如说内存最大能开多少,整型类型能表示的最大的数是多少。
foochow
2005-06-23
打赏
举报
回复
应该有吧:P
hundlom
2005-06-23
打赏
举报
回复
快点,散分啦...
beyondtkl
2005-06-23
打赏
举报
回复
看看 可用的(内存+虚拟内存) 最大是多少了。
zhousqy
2005-06-23
打赏
举报
回复
memcpy(void *des, const void *src, size_t n);
yhbttfile
2005-06-23
打赏
举报
回复
memcpy()拷贝有没有最大限制?STL中string有没有长度限制?那strncpy()呢?
————————————————————————————————————————
memcpy()和strncpy()只是复制内容,不申请内存。最大限制的说法有意义吗?如果有,那就只能说是它的最后一个参数,长度参数了。
string的长度是受basic_string::size_type限制。这个size_type在32位OS上一般是定义成unsigned int。也就是4294967295(4G)。所有32位操作系统上一次申请4G的内存是不可能的(总会失败)。所以,这个限制就受实际内存大小以及操作系统限制了。
memcpy
地址
拷贝
字符串长度问题
在代码的编写中经常需要把原来字符串中的内容,替换诚信的字符串,那么如何修改,我们知道字符串是没办法直接进行赋值的,这时我们想用地址
拷贝
来解决,那么 char a[] ; char *b = "123" ;
memcpy
(a,b,sizeof(b)); 仔细观察上面
拷贝
的正确吗?答案当然是错误的,显然sizeof(b)并不是字符串b的实际长度,而是其指针的大小,那么我们修改一下?
memcpy
(a,b,strlen(b)) ; 心想这次用strlen来计算长度,得出的一定是正确长度,但这样写,还是不对,有
memcpy
引发字符串打印长度异常
#include <stdlib.h> #include <string.h> int main() { char str1[100] = {"192.168.12.123"}; char str2[20]={"192.168.12.1"}; printf("%s\n",str1);
memcpy
(str1,str2,strlen(str2)); //错误做法 //
memcpy
(str.
C语言经典面试题之深入解析 字符串
拷贝
的 sprintf、strcpy和
memcpy
使用与区别
sprintf 指的是字符串格式化命令,是把格式化的数据写入某个字符串中,即发送格式化输出到 string 所指向的字符串,直到出现字符串结束符 '\0' 为止。
memcpy
内存优化方法
内存
拷贝
的优化方法 http://www.blogcn.com/blog/cool/main.asp?uid=flier_lu&id=1577430 http://www.blogcn.com/blog/cool/main.asp?uid=flier_lu&id=1577440 在复杂的底层网络程序中,内存
拷贝
、字符串比较和搜索操作很容易成为性能瓶颈所在。编译器自带的此类函数虽然做了一些通用性的优化工作,但因为在使用指令集方面受到兼容性的约束,远远没有达到
最大
限度利用硬件能力的地步。而通过针
memcpy
git
拷贝
、比较函数使用小结 ----吴海生167152 在编码的过程中,
拷贝
、比较是不可避免的操作。目前我们可以使用的
拷贝
、比较函数比较多,如
memcpy
、strcpy、strncpy、sprintf、strncmp、memcmp等,它们有相同的地方,也有一些区别,之前rsvp在使用snprintf(封装成XOS_snprintf)就出现过一个小故障。那么在使用它们的时候有什么需要注意
C++ 语言
64,631
社区成员
250,887
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章