字符串操作

someon 2008-11-28 11:09:20
TCHAR aaa[] = "abc\0def\0ghij\0\0"
TCHAR bbb[]

怎么才能把"abc","def","ghij"分别存到bbb中?

请写出代码,谢谢
...全文
67 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
someon 2008-11-28

谢谢各位
回复
Chivalry 2008-11-28
牛啊!
回复
//前面的代码贴错地方了,-_-#

TCHAR aaa[] = "abc\0def\0ghij\0\0";
CString str;
for(int i = 0; i < 3; i++)
{
AfxExtractSubString(str,aaa,0,'\0');
strcpy(bbb[i], str.GetBuffer(0));
str.ReleaseBuffer(0);
}
回复
gaoxiaowei 2008-11-28
方法都告你了 自己封装一个函数 不要等的吃现成的 要不你永远也进步不了
回复
gaoxiaowei 2008-11-28
AfxExtractSubString 未公开的API 放心使用 赫赫
回复
someon 2008-11-28
[Quote=引用 2 楼 gaoxiaowei 的回复:]
TCHAR aaa[] = "abc\0def\0ghij\0\0";
CString str1,str2,str3;
AfxExtractSubString(str1,aaa,0,'\0');
AfxExtractSubString(str2,aaa,1,'\0');
AfxExtractSubString(str3,aaa,2,'\0');
[/Quote]
可不可以不用CString ?
个数未知怎么办?
AfxExtractSubString(str4,aaa,3,'\0');
str4=?
回复
someon 2008-11-28
[Quote=引用 1 楼 jimoguilai 的回复:]
写个循环bbb[i] = aaa[i + offset]
[/Quote]
不明白。。。
回复
yuhudie203 2008-11-28
[Quote=引用 2 楼 gaoxiaowei 的回复:]
TCHAR aaa[] = "abc\0def\0ghij\0\0";
CString str1,str2,str3;
AfxExtractSubString(str1,aaa,0,'\0');
AfxExtractSubString(str2,aaa,1,'\0');
AfxExtractSubString(str3,aaa,2,'\0');
[/Quote]
AfxExtractSubString 那的函数?
回复
	LPCSTR sFileName ="F:\\1\\0\\20081126\\106\\2042410.V3";
char *pdest;
int result1 = 0, result2 = 0;;
for(int i = 0; i < 4; i++)
{
pdest = strchr( sFileName + result1, '\\' );
result1 = (int)(pdest - sFileName + 1);
}
pdest = strchr( sFileName + result1, '\\' );
result2 = (int)(pdest - sFileName + 1);
char *ch;
ch = new char[result2 - result1];
memcpy(ch, sFileName + result1, sizeof(ch));
ch[result2 - result1 - 1] = 0;
int j = atoi(ch);
delete []ch;
回复
gaoxiaowei 2008-11-28
TCHAR aaa[] = "abc\0def\0ghij\0\0";
CString str1,str2,str3;
AfxExtractSubString(str1,aaa,0,'\0');
AfxExtractSubString(str2,aaa,1,'\0');
AfxExtractSubString(str3,aaa,2,'\0');
回复
Chivalry 2008-11-28
写个循环bbb[i] = aaa[i + offset]
回复
someon 2008-11-28
[Quote=引用 8 楼 gaoxiaowei 的回复:]
方法都告你了 自己封装一个函数 不要等的吃现成的 要不你永远也进步不了
[/Quote]
AfxExtractSubString 是mfc的函数,我的程序没用mfc
CString ,AfxExtractSubString 根本没定义

其实这个分割问题根本不用这个函数也可以很简单的解决
TCHAR aaa[1024],*p 
TCHAR bbb[1024]
memcpy(aaa ,_T("abc\0def\0ghij\0\0"));
p = &aaa[0];
while (TRUE)
{
memcpy(bbb,p);
p+=wcslen(p)+1;
if (memcmp(p, _T("\0\0"),2)==0)
{
break;
}
}


确实不能迷信高手
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2008-11-28 11:09
社区公告

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