QT QString转char*,char*转QString;简单明了,看代码。

//原始QString
QString qs = QString::fromLocal8Bit("我的");
std::string strQs = qs.toStdString();

int qs_size = qs.length();//长度为3
int strQs_size = strQs.length();//长度8

//得到转换后的char*
char* p = new char[strQs_size];
memcpy(p, qs.toStdString().c_str(), strQs_size);

//再得到QString
std::string strQs1(p, strQs_size);
QString qs1 = QString::fromStdString(strQs1);

时间: 2024-11-08 18:56:27

QT QString转char*,char*转QString;简单明了,看代码。的相关文章

例题:计算运费。c#语言基础,比较简单。看代码输入格式和方法。同样方法可以做一个 出租车打车的程序

while (true) { Console.WriteLine("请输入行李重量"); double k = Convert.ToDouble(Console .ReadLine ()); if (k >= 0 && k < 50) { double m; m = k * 0.25; Console.WriteLine("您的运费为"+m+"元"); } else if (k >= 50) { double m

【转载】Qt中的QString,QByteArray,Qchar, char*

先要说的是QString. 之所以把QString单独拿出来,是因为string是很常用的一个数据结构,甚至在很多语言中,比如JavaScript,都是把string作为一种同int等一样的基本数据结构来实现的. 每一个GUI程序都需要string,这些string可以用在界面上的提示语,也可以用作一般的数据结构.C++语言提供了两种字符串的实现:C风格的 字符串,以'\0‘结尾:std::string,即标准模版库中的类.Qt则提供了自己的字符串实现:QString.QString以16位 U

QString, string, int, char* 之间相互转换

这三种数据类型在实际运用中经常需要互相转换,那么这里小结下它们之间的转换方法: - Qstring & string Qt中封装的类十分强大,其成员函数数量之多比STD有过之而无不及,许多程序员抱怨Qt非要整个自己的QSD,为啥不直接支持STD,但是我想说某些时候QST完全可以替代STD,就算不想完全替代,Qt也提供了完整而强大的相互转换的函数,下面我们先来看Qstring和string的相互转换. // string to QString std::string s = "hello

QString, Std::string, char *相互转换

Qt 库中对字符串类型进行了封装,QString 类提供了所有字符串操作方法,给开发带来了便利. 由于第三方库的类型基本上都是标准的类型,即使用std::string或char *来表示字符 (串) 类型,因此在Qt框架下需要将QString转换成标准字符 (串) 类型.下面介绍QString, Std::string, char *相互转换转换方法. std::string和char *的相互转换 1.  将char *或char[]转换为std::string 可直接赋值 std::stri

【转】深入 char * ,char ** ,char a[ ] ,char *a[] 内核

原文出处:http://blog.csdn.net/daiyutage/article/details/8604720    C语言中由于指针的灵活性,导致指针能代替数组使用,或者混合使用,这些导致了许多指针和数组的迷惑,因此,刻意再次深入探究了指针和数组这玩意儿,其他类型的数组比较简单,容易混淆的是字符数组和字符指针这两个...下面就开始剖析一下这两位的恩怨情仇... 1 数组的本质 数组是多个元素的集合,在内存中分布在地址相连的单元中,所以可以通过其下标访问不同单元的元素.. 2 指针. 指

const char*, char const*, char*const的区别

Bjarne在他的The C++ Programming Language里面给出过一个助记的方法: 把一个声明从右向左读. char * const cp; ( * 读成 pointer to ) cp is a const pointer to char const char * p; p is a pointer to const char; char const * p; 同上因为C++里面没有const*的运算符,所以const只能属于前面的类型. C++标准规定,const关键字放在

string 与char* char[]之间的转换

string 与char* char[]之间的转换,有需要的朋友可以参考下. 1.首先必须了解,string可以被看成是以字符为元素的一种容器.字符构成序列(字符串).有时候在字符序列中进行遍历,标准的string类提供了STL容器接口.具有一些成员函数比如begin().end(),迭代器可以根据他们进行定位. 注意,与char*不同的是,string不一定以NULL('\0')结束.string长度可以根据length()得到,string可以根据下标访问.所以,不能将string直接赋值给

qt自己定义搜索框(超简单,带效果图)

1. 什么也不要说.先上效果图: 2. 代码 头文件: #ifndef APPSEARCHLINE_H #define APPSEARCHLINE_H #include <QLineEdit> class AppSearchLine : public QLineEdit { Q_OBJECT public: AppSearchLine(QWidget *parent = 0); }; #endif // APPSEARCHLINE_H 源文件 #include "appsearchl

const char*, char const*, char*const使用时的区别

案例1: #include<iostream> using namespace std; void main(void) { // char* a 与 char a[] 的区别 char* a = "abcdef"; // a为一指针,其值可以改变.现在a指向的是一常量字符串 cout << a << endl; a = "ghijkl"; // a现在指向另一常量字符串 //a[0] = 'z'; // a指向的为常量,编译没问