我只是想通过char"来分割这个字符串:" 例如"第一个:最后一个" 所以一个字符串将有#34;第一个"而另一个将有"最后"
我确实喜欢此网址中的那个(sscanf string splitting not working) 但它并没有很好地与我合作,因为这两个字符串都有" last"值
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include <cstring>
#include<tchar.h>
#include<atlstr.h>
using namespace std;
void main()
{
CString firstString(""), secondString(""), myString("first:last");
sscanf(myString, "%[^:]:%s", firstString, secondString);
printf("first: %s, last: %s", firstString, secondString);
system("pause");
}
答案 0 :(得分:1)
如上所述,不要混用C&#34;字符串&#34;和MFC CStrings。这是使用MFC CString的解决方案:
const int iColon = myString.Find(':');
if (iColon >= 0)
{
firstString = myString.Left(iColon);
secondString = myString.Mid(iColon+1);
}