最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c++中string類型和int類型相互轉(zhuǎn)換的幾種常用方法

 更新時間:2023年08月01日 11:12:16   作者:不愛吃魚的貓丶  
我們在編寫程序時,經(jīng)常涉及到int與string之間的類型轉(zhuǎn)換,本文主要介紹了c++中string類型和int類型相互轉(zhuǎn)換的幾種常用方法,具有一定的參考價值,感興趣的可以了解一下

一.string類型轉(zhuǎn)換成int類型

方法一:使用atoi()函數(shù)

#include<bits/stdc++.h>
using namespace std;
int main(){
    string str="123";
    cout<<str<<"    str的類型為"<<typeid(str).name()<<endl;//輸出Ss表示string類型
    //atoi的參數(shù)類型為(const char *nptr)而string是一個類,所以需要獲取str的首地址即str.c_str()
    int num=atoi(str.c_str()); 
    cout<<num<<"    num的類型為"<<typeid(num).name()<<endl;//輸出i表示int類型 
}

用devc++的typeid(num).name()輸出是i,vs2017輸出的是int,不同編譯器這個函數(shù)輸出可能不同啦。

還有一些類似的函數(shù):

  • long atol(const char *nptr);把字符串轉(zhuǎn)換成長整型數(shù)
  • double atof(const char *nptr);把字符串轉(zhuǎn)換成浮點(diǎn)數(shù)
  • long int strtol(const char *str, char **endptr, int base);把參數(shù) str 所指向的字符串根據(jù)給定的 base 轉(zhuǎn)換為一個長整數(shù)

方法二:通過stringstream類轉(zhuǎn)化

#include<bits/stdc++.h>
using namespace std;
int main() {
    stringstream sstream;
    string str="123";
    int num;
    cout<<"str="<<str<<"    str的類型為"<<typeid(str).name()<<endl;//輸出Ss表示string類型
    sstream<<str;// 將string類型的值放入字符串流中
    sstream>>num;//將sstream中的第一條數(shù)據(jù)輸出到num中 
    cout<<"num="<<num<<"    num的類型為"<<typeid(num).name()<<endl;//輸出i表示int類型
}

二.int類型轉(zhuǎn)換成string類型

方法一:使用to_string()函數(shù)

#include<bits/stdc++.h>
using namespace std;
int main() {
    int num=123;
    string str=to_string(num);
    cout<<"num="<<num<<"    num的類型為"<<typeid(num).name()<<endl;//輸出i表示int類型
    cout<<"str="<<str<<"    str的類型為"<<typeid(str).name()<<endl;//輸出Ss表示string類型
}

to_string(x)函數(shù)有多個重載,只要x是內(nèi)置數(shù)值類型就可以。

方法二:通過stringstream類轉(zhuǎn)化

#include<bits/stdc++.h>
using namespace std;
int main() {
    stringstream sstream;
    string str;
    int num=123;
    cout<<"num="<<num<<"    num的類型為"<<typeid(num).name()<<endl;//輸出i表示int類型
    sstream<<num;// 將num類型的值放入字符串流中
    sstream>>str;//將sstream中的第一條數(shù)據(jù)輸出到str中 
    cout<<"str="<<str<<"    str的類型為"<<typeid(str).name()<<endl;//輸出Ss表示string類型
}

方法三:使用itoa()函數(shù)

函數(shù)原型:char * itoa(int value ,char *string ,int radix);

  • 第一個參數(shù)是要轉(zhuǎn)換的數(shù)字
  • 第二個參數(shù)是要寫入轉(zhuǎn)換結(jié)果的目標(biāo)字符串(字符型數(shù)組)
  • 第三個參數(shù)是轉(zhuǎn)移數(shù)字時所用的基數(shù)(進(jìn)制)?(可以用來做進(jìn)制轉(zhuǎn)換)
  • 返回值:指向string這個字符串的指針
#include<bits/stdc++.h>
using namespace std;
int main() {
    int num=123;
    char strc[100];
    string str=itoa(num,strc,10);//返回的是指向strc的指針,直接存進(jìn)string類型即可
    cout<<"num="<<num<<"    num的類型為"<<typeid(num).name()<<endl;//輸出i表示int類型
    cout<<"str="<<str<<"    str的類型為"<<typeid(str).name()<<endl;//輸出Ss表示string類型
}

其他類似的函數(shù):

  • litoa() 將長整型值轉(zhuǎn)換為字符串

到此這篇關(guān)于c++中string類型和int類型相互轉(zhuǎn)換的幾種常用方法的文章就介紹到這了,更多相關(guān)c++ string和int 互換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C語言每日練習(xí)之乒乓球比賽問題

    C語言每日練習(xí)之乒乓球比賽問題

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)乒乓球比賽,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • vscode C++開發(fā)環(huán)境配置步驟詳解(教你如何用vscode編寫寫C++)

    vscode C++開發(fā)環(huán)境配置步驟詳解(教你如何用vscode編寫寫C++)

    這篇文章主要介紹了vscode C++開發(fā)環(huán)境配置詳細(xì)教程(教你如何用vscode編寫寫C++),本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • C語言printf詳細(xì)解析

    C語言printf詳細(xì)解析

    C中格式字符串printf()的一般形式為: %[標(biāo)志][輸出最小寬度][.精度][長度]類型, 其中方括號[]中的項(xiàng)為可選項(xiàng)。各項(xiàng)的意義介紹如下
    2013-09-09
  • C語言如何實(shí)現(xiàn)成績等級判別

    C語言如何實(shí)現(xiàn)成績等級判別

    這篇文章主要介紹了C語言如何實(shí)現(xiàn)成績等級判別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 淺析C++標(biāo)準(zhǔn)庫元組(tuple)源碼

    淺析C++標(biāo)準(zhǔn)庫元組(tuple)源碼

    這篇文章主要介紹了C++標(biāo)準(zhǔn)庫元組(tuple)源碼,介紹了什么是元組以及用法,并進(jìn)行了源碼分析,需要的朋友可以參考下
    2015-08-08
  • C語言簡明講解預(yù)編譯的使用

    C語言簡明講解預(yù)編譯的使用

    在C語言的程序中包括各種以符號#開頭的編譯指令,這些指令稱為預(yù)處理命令。預(yù)處理命令屬于C語言編譯器,而不是C語言的組成部分,通過預(yù)處理命令可擴(kuò)展C語言程序設(shè)計(jì)的環(huán)境
    2022-05-05
  • 深入解析Radix Sort基數(shù)排序算法思想及C語言實(shí)現(xiàn)示例

    深入解析Radix Sort基數(shù)排序算法思想及C語言實(shí)現(xiàn)示例

    基數(shù)排序和桶排序、計(jì)數(shù)排序共同是三種最常用的線性排序算法,這里我們就來深入解析Radix Sort基數(shù)排序算法思想及C語言實(shí)現(xiàn)示例,需要的朋友可以參考下
    2016-07-07
  • 淺談幾種常見語言的命名空間(Namespace)

    淺談幾種常見語言的命名空間(Namespace)

    本文給大家簡單介紹了下幾種常見語言的命名空間的特性以及簡單示例,大家對比下,有需要的小伙伴可以參考下
    2016-03-03
  • 一篇文章帶你了解C語言中volatile關(guān)鍵字

    一篇文章帶你了解C語言中volatile關(guān)鍵字

    這篇文章主要給大家介紹了關(guān)于C語言中volatile關(guān)鍵字,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-09-09
  • C語言二維數(shù)組幾種常用的表示方法

    C語言二維數(shù)組幾種常用的表示方法

    今天小編就為大家分享一篇關(guān)于C語言二維數(shù)組幾種常用的表示方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03

最新評論

泽普县| 江口县| 公安县| 隆昌县| 攀枝花市| 靖边县| 岫岩| 攀枝花市| 公安县| 胶州市| 景宁| 水城县| 台州市| 苍梧县| 钟祥市| 和林格尔县| 偏关县| 昆山市| 苍梧县| 孝昌县| 昌平区| 苏尼特左旗| 渭南市| 庄浪县| 安多县| 镇赉县| 吴江市| 锡林郭勒盟| 呼和浩特市| 忻州市| 盘锦市| 德令哈市| 平利县| 马山县| 林周县| 普宁市| 九寨沟县| 禹城市| 汝州市| 宕昌县| 旬邑县|