目前常用类型主要有int、char、char *、string、QString、HEX(16进制)等
char: 1个字节 short: 2个字节 int: 4个字节 long: 4个字节
int转char:直接将int的数值+‘0’放入到char类型变量中就可以了,注意此时只能转一位数如1、2否侧会变成对应ascll码的特殊符号;
int i=1; char j= i+'0';
int转char *:可以将多个数字存入到11、12等数需要将int数进行操作:
char str[4]; int m=1234; while (m > 0) { str[i] = '0' + m % 10; m = m / 10; i++; }
char str[4]; int m; itoa(m,str,10);
int转string:
int m=1234; string str=std::to_string(long double(m));
stringstream stm; string str; int m=100; stm<<m; stm>>str;
int转QString
long a = 10; QString s = QString::number(a, 10); // s == "10" QString t = QString::number(a, 16).toUpper(); // t == "0a"
int (10进制)转16进制:
char str[4]; int m; itoa(m,str,16);
char转int:
char str; int b = str - '0'
char *转int:
char *str = "64"; int m = atoi(str);
将数组中每个数-‘0’即48
int m = 0; char *str = "123"; stringstream strm(strData ); strm>>m;
char * 转string
直接赋值 string str; char *p = "hello"; str = p; cout<<str;
char *转QString
const char *c1 = "Hello World 1!"; QString s1(c1); qDebug() << c1 << s1;
string转int
同char *转int
string转char *
const char *p = s.data();
const char * p = s.c_str();
string转QString:
string s = qstr.toStdString();//QString转string QString qstr2 = QString::fromStdString(s);
QString转int:
int i = atoi(qstr.toStdString().c_str());
int i = atoi(qstr.ascii());
QString转char *
const char * str_data; //这里一定要加上const,否则会报错! QString qs_data; str_data = qs_data.ascii();
QString qstr; qstr.toStdString().c_str();
QString 转string
QString qstr; qstr.toStdString();