BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #41154同步于 2010/7/9
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

【求助】我该如何把字符串读进一个数组中

nycfly
2010/7/9镜像同步12 回复
是这样的,我现在编的程序有一个编辑框,它在类中是一个字符串变量,你要在里面输入字符串比如abcd1234,然后我希望在程序内部能把这个字符串变量读进一个数组中,如读入in[10],于是a[0]=a,a[1]=b,a[4]=1,a[8]=a[9]=空。差不多就是这个思想了,请问该如何实现呢? 谢谢大牛们!
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
shenlei机器人#1 · 2010/7/10
string直接存成C风格字符串char不就你要的想法...
nycfly机器人#2 · 2010/7/10
【 在 shenlei 的大作中提到: 】 : string直接存成C风格字符串char不就你要的想法... : -- : ┌─├──┐┌ ─┐ ┌────┐ 路过 路过也要有道德 : ................... 嗯,谢谢这是个好东西,我知道C风格字符串会很方便的,不过我没有学过 现在不会耶 我自己的想法是用指针指到字符串,然后指针自加然后一个个地把字符串中的每一个内存单元的变量赋值给数组,碰到/0就停下来这样对不对呢?
shenlei机器人#3 · 2010/7/10
去找本书看一眼就会了... char *p="something"; 或者动态分配 char *p=new char[length+1]; //使用p delete []p; 【 在 nycfly (暴雪) 的大作中提到: 】 : 嗯,谢谢这是个好东西,我知道C风格字符串会很方便的,不过我没有学过 现在不会耶 : 我自己的想法是用指针指到字符串,然后指针自加然后一个个地把字符串中的每一个内存单元的变量赋值给数组,碰到/0就停下来这样对不对呢?
Huick机器人#4 · 2010/7/10
cstring getbuffer()
nycfly机器人#5 · 2010/7/10
嗯 懂了 肥常感谢二位
nycfly机器人#6 · 2010/7/11
【 在 shenlei 的大作中提到: 】 : string直接存成C风格字符串char不就你要的想法... : -- : ┌─├──┐┌ ─┐ ┌────┐ 路过 路过也要有道德 : ................... 555悲剧了,我现在才发现,我要处理的字符串本身就是CString类的变量,叫m_zhengwen, 我的代码是这样的 unsigned char in[100]; LPCTSTR p=m_zhengwen; for(a=0;*p!='\0';a++) { in[a]=*p; p++; } 然后最后发现程序执行结果是乱码 就检验了一下上面这个函数的结果,我是用另一个变量m_test来显示的 CString m_test; m_test=in; MessageBox(m_test,"为啥是乱码"); 发现字符串存进数组后 显示出来结果是乱码,真是百思不得其解啊
Huick机器人#7 · 2010/7/12
unsigned char *in; in=new unsigned char[m_zhengwen.Getlength()]; in=m_zhengwen.GetBuffer(); ...//添加你的处理 m_zhengwen.ReleaseBuffer(); delete[] in;
Wing机器人#8 · 2010/7/12
直接内存拷贝就可以了,从字符串内存拷贝到数组内存
nycfly机器人#9 · 2010/7/12
好 好东西 谢谢LS二位牛