字符串格式
数值+字符串,如:
“1盒”、“0.1g” 等
代码
#include "stdafx.h"
#include <string.h>
#include <iostream>
using std::string;
void SplitNumFromString(string str,double& dnum, string& deststr);
int _tmain(int argc, _TCHAR* argv[])
{
string str="1g";
double dnum=0.0;
string deststr="";
SplitNumFromString(str,dnum,deststr);
printf("数值:%g\t字符串:%s\n",dnum,deststr.c_str());
return 0;
}
void SplitNumFromString(string str,double& dnum, string& deststr)
{
char* source = (char*)str.c_str();
char* dest = source;
while(*dest!='\0'
&&(*dest=='\0' || (*dest<='9'&&*dest>='0') ))
{
dest++;
}
deststr=dest;
*dest='\0';
dnum=atof(source);
}
结果