CString小问题。

Morgan_ma 2003-04-17 09:57:32
CString是不是缓冲区有长度限制?
如何才能调整?
...全文
52 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zcj193 2003-04-17
  • 打赏
  • 举报
回复
没有!
ld_sfzc 2003-04-17
  • 打赏
  • 举报
回复
理论上可以到4G的空间。
loopyifly 2003-04-17
  • 打赏
  • 举报
回复
CString 的问题有一个经典帖子,就在基础类里,有很多跟贴,找找看,不过那个帖子是讨论CString类的内存泄露问题的


CString没有楼主担心的问题,检查程序中其他的地方
yinsong6 2003-04-17
  • 打赏
  • 举报
回复
CString 虽然理论上没有限制,但使用中就不同了,我曾经遍过一个编码查询的DLL,在初始化CString变量时,是有长度限制的,超过一定长度,编译器就会抱错!
free_card 2003-04-17
  • 打赏
  • 举报
回复
up
coyer 2003-04-17
  • 打赏
  • 举报
回复
这个问题我以前见过一个讨论,比较深入的那种。
对于单个字符串,理论上是没有的。

但是对于整个程序中的CString的变量,编译器在DEBUG模式下会一次申请很大的一块区域,这个区域是多少,我不记得了,在Release模式下,一次申请的内存区域就要少一些,好象是64K吧?(?是这个数吗?)如果程序运行过程中,内存不够,会自动再申请,所以,理论上是没有限制的。
librastar2001 2003-04-17
  • 打赏
  • 举报
回复
也许是你的程序中把“/0”加入到CString当中而导致字符串被截断
gavinyu 2003-04-17
  • 打赏
  • 举报
回复
我把一个很大的文本文件都到一个CString都没事...
wltsui 2003-04-17
  • 打赏
  • 举报
回复
没有
lipotee 2003-04-17
  • 打赏
  • 举报
回复
GetBuffer()函数里可以用参数设定你想要的长度的。
丁淇石头 2003-04-17
  • 打赏
  • 举报
回复
没有限制,现在计算机的内存都比较大,可以不用考虑。
blue_fairy 2003-04-17
  • 打赏
  • 举报
回复
理论上没有限制,实际上受内存大小的限制。
lsgfgs 2003-04-17
  • 打赏
  • 举报
回复
CString没有缓冲区长度限制,其存储内容只与你的内存有关。
如果你在调试看不全内容,可以存到文件里看,或者看内存内容

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧