您的位置:首页 > 编程语言 > C语言/C++

C/C++和Qt中数据类型转换

2017-05-16 09:41 489 查看
C/C++和Qt中数据类型转换

       由于项目需要,经常使用VS和Qt,其中遇到的一些数据类型转换问题,现在都一一罗列出来,不全的后续遇到会补充。暂时有这些字符之间的转换:

1、C/C++中string和Qt中QString转换

[html] view
plain copy

<span style="font-size:18px;">QString temp = "D:\\Pic";   

string Str = temp.toStdString();  

cout<<temp.toStdString()<<endl;    //显示temp中存储的内容。</span>  

2、Qt中string和gcstring转换

[html] view
plain copy

<span style="font-size:18px;">string Str = "D:\\Pic";  

gcstring TriggerModeStr;  

TriggerModeStr = Str.c_str();</span>  

3、C/C++中string和char[]转换

[html] view
plain copy

<span style="font-size:18px;">QString temp = "D:\\Pic";          //控件中获取的存图路径。  

string Str = temp.toStdString();   //Qt中把QString转换成string。  

  

char savePicName[20];              //下面是把string类型转换成char[]类型。  

int j;  

for (j = 0; j < Str.length(); j++)  

     savePicName[j] = Str[j];  

savePicName[j] = '\0';  

  

char name[20] = "/%05d.jpg";      //这个是图片的命名,以0开头5位,第一个是00001.jpg.  

strcat(savePicName, name);        //strcat(数组,指针/数组)是把图片路径和命名加起来。  

cout<<savePicName<<endl;  //这里就输出了:D:\Pic\%05d.jpg.和下面注释的sprintf()一样。  

  

//保存图片,把存图路径和图片命名分开来写。  

char FileName[20];  

sprintf(FileName, savePicName , i);      

//sprintf(file_name, "D:\\Pic\\%05d.jpg", i);  

CImagePersistence::Save(ImageFileFormat_Png, FileName, ptrGrabResult);</span>  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: