VC6下 win32 Application 如何给一个指针数组重新赋值

lanlanq 2009-07-17 09:12:14
定义了一个指针数组,如何给他重复赋值

LPCTSTR lpszStr[] = {"CO1","CO2",NULL};
Co............................
lpszStr = new LPCTSTR[]{"300","600","1200","2400"}


第三行是错误的,是为了表达这个意思。

请朋友帮助
...全文
149 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyanghejerry 2009-07-24
  • 打赏
  • 举报
回复
……这不是BCB子版么……怎么突然冒出VC的东西了……
zfsoft2206 2009-07-18
  • 打赏
  • 举报
回复
楼主 有没有看 LPCTSTR 的类型定义啊,VC2005是这样的:
typedef __nullterminated CONST CHAR *LPCSTR, *PCSTR;
typedef LPCSTR PCTSTR, LPCTSTR, PCUTSTR, LPCUTSTR;
楼主应该明白CONST含义吧?地址都是固定,你怎么能够重新把新的地址再重新赋值给它呢?也就是说LPCTSTR的变量不能做L-VAULE用!
你把LPCTSTR修改成LPTSTR才能赋值吧!
周药师 2009-07-17
  • 打赏
  • 举报
回复
如果这样写,请问如何循环取出定义个lpszStr的内容。
能不能再这样写
lpszStr[3] = "100,200,300";
[/Quote]
这样写可以的
这个其实就是给数组下标为3(第四个元素)赋值
lanlanq 2009-07-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 songhtao 的回复:]
lpszStr[2] = "新字符串,注意字符串长度不能超过该元素分配的内存长度"
[/Quote]
如果这样写,请问如何循环取出定义个lpszStr的内容。
能不能再这样写
lpszStr[3] = "100,200,300";
efeeler1925 2009-07-17
  • 打赏
  • 举报
回复
路过学习帮顶!
我来看看CB 2009-07-17
  • 打赏
  • 举报
回复
lpszStr = new LPCTSTR[]{"300","600","1200","2400"}
编译器不知道你要分配多少内存。
而且new的时候也不能赋初值
我不懂电脑 2009-07-17
  • 打赏
  • 举报
回复
lpszStr[2] = "新字符串,注意字符串长度不能超过该元素分配的内存长度"

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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