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

C語言中字符串與各數(shù)值類型之間的轉(zhuǎn)換方法

 更新時間:2021年03月23日 11:58:20   作者:思維之上  
這篇文章主要介紹了C語言中字符串與各數(shù)值類型之間的轉(zhuǎn)換方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

C語言的算法設(shè)計中,經(jīng)常會需要用到字符串,而由于c語言中字符串并不是一個默認類型,其標準庫stdlib設(shè)計了很多函數(shù)方便我們處理字符串與其他數(shù)值類型之間的轉(zhuǎn)換。

首先放上一段展示各函數(shù)使用的代碼,大家也可以copy到自己的機器上運行觀察

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
  int num=183;
  char str[3];

  //itoa函數(shù)將整型轉(zhuǎn)換為字符串數(shù)值類型 
  itoa(num,str,10);
  printf("%s\n",str);

  //atoi函數(shù)將字符串轉(zhuǎn)化為整形數(shù)值類型 
  int nums=atoi(str); 
  printf("%d\n",nums);

  double dou=12.432;
  char c[80];
  char cc[80];
  //sprintf函數(shù)可以實現(xiàn)其他數(shù)值類型到string類型的轉(zhuǎn)換
  sprintf(c,"%2.2f",dou);
  //還可以實現(xiàn)多個數(shù)值和字符串之間的任意連接,反正最后轉(zhuǎn)換成字符串 
  sprintf(cc,"%2.3f%s",dou,"you");
  printf("%s\n",c);  
  printf("%s\n",cc);

  //將單精度或者雙精度類型轉(zhuǎn)化為字符串的fcvt和gcvt函數(shù) 
  //fcvt并不能顯示小數(shù)點位置 
  double fcvtnum=123.456;
  char *fcvtstr;
  int decdot,sign;
  fcvtstr=fcvt(fcvtnum,2,&decdot,&sign);
  printf("%s\n",fcvtstr); 

  //gcvt能夠顯示小數(shù)點,其第二個參數(shù)表示有效位數(shù)字 
  char fcvtstrg[20];
  gcvt(fcvtnum,6,fcvtstrg);
  printf("%s\n",fcvtstrg);

  // strtod和atof能將字符串轉(zhuǎn)化為雙精度和單精度類型 
  printf("字符串轉(zhuǎn)化為雙精度浮點數(shù)%f\n單精度浮點數(shù)%f\n",
    strtod(fcvtstrg,NULL),atof(fcvtstrg)); 

  return 0;
}

下面對上面代碼用到的各函數(shù)分類整理與描述

字符串轉(zhuǎn)化為其他類型

  • atoi(char *str) :只有一個待轉(zhuǎn)化字符串參數(shù),返回整型數(shù)
  • atof(char *str) :只有一個待轉(zhuǎn)化字符串參數(shù),返回單精度浮點數(shù)
  • strtod(char *str,char *end) :一個待轉(zhuǎn)化的字符串參數(shù),和一個轉(zhuǎn)化結(jié)束的字符串參數(shù),一般將其置為NULL,返回雙精度浮點數(shù)

其他數(shù)值類型轉(zhuǎn)化為字符串

  • itoa(int num,char *str,10) :整形轉(zhuǎn)化為字符串,第一個參數(shù)為待轉(zhuǎn)化的整型值num,第二參數(shù)為轉(zhuǎn)化后的結(jié)果存儲字符串,第三個為轉(zhuǎn)化的進制,無返回值
  • fcvt(float num,int ndigits,*decdot,*sign) :浮點型轉(zhuǎn)化為字符串,第一個參數(shù)為待轉(zhuǎn)化的浮點數(shù)num,第二個參數(shù)為保留的小數(shù)點后面的位數(shù),第三個存儲結(jié)果中小數(shù)點的位置,第四個參數(shù)存儲數(shù)值的正負,返回轉(zhuǎn)化后字符串的指針,但是字符串中并沒有小數(shù)點(如123.456轉(zhuǎn)化為123456),所以一般就不要用啦
  • gcvt(float num,int n,char *str) :浮點型轉(zhuǎn)化為字符串,第一個參數(shù)為待轉(zhuǎn)化的浮點數(shù)num,第二個參數(shù)為保留的有效位數(shù)(不是小數(shù)點后的哦),第三個參數(shù)為存儲結(jié)果的字符串指針,無返回值
  • sprintf(char *str, format,float num[,float num2…]) :其他各種類型都可以通過sprintf轉(zhuǎn)化為字符串str,其中format表示轉(zhuǎn)化前保留的格式,并且支持多個數(shù)據(jù)類型一起轉(zhuǎn)化實現(xiàn)連接功能

到此這篇關(guān)于C語言中字符串與各數(shù)值類型之間的轉(zhuǎn)換方法的文章就介紹到這了,更多相關(guān)C語言字符串與各數(shù)值類型轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • c++ STL常用遍歷算法

    c++ STL常用遍歷算法

    這篇文章主要介紹了c++ STL常用遍歷算法的實現(xiàn),幫助大家更好的理解和使用c++,感興趣的朋友可以了解下
    2020-12-12
  • C++11中std::async的使用詳解

    C++11中std::async的使用詳解

    這篇文章主要介紹了C++11中std::async的使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02
  • c語言中用位運算實現(xiàn)加法技巧介紹

    c語言中用位運算實現(xiàn)加法技巧介紹

    用位運算實現(xiàn)加法也就是計算機用二進制進行運算,32位的CPU只能表示32位內(nèi)的數(shù),這里先用1位數(shù)的加法來進行,需要的朋友可以參考下
    2012-11-11
  • C語言實現(xiàn)掃雷小游戲(適合初學者)

    C語言實現(xiàn)掃雷小游戲(適合初學者)

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)掃雷小游戲,適合初學者練習,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Linux下C語言的fork()子進程函數(shù)用法及相關(guān)問題解析

    Linux下C語言的fork()子進程函數(shù)用法及相關(guān)問題解析

    fork()函數(shù)在Linux下可以用于產(chǎn)生一個子進程,這里我們挑選了兩個fork相關(guān)的面試題,來看一下Linux下C語言的fork()子進程函數(shù)用法及相關(guān)問題解析
    2016-06-06
  • c++中關(guān)于max_element()函數(shù)解讀

    c++中關(guān)于max_element()函數(shù)解讀

    這篇文章主要介紹了c++中關(guān)于max_element()函數(shù)解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 深入理解C++的對象模型

    深入理解C++的對象模型

    本文在介紹C++使用的對象模型之前,先介紹了2種對象模型:簡單對象模型(a simple object model)和表格驅(qū)動對象模型(a table-driven object model),這樣介紹對后面的內(nèi)容更有幫助,有需要的小伙伴們可以參考學習。
    2016-08-08
  • 詳解C語言fscanf函數(shù)讀取文件教程及源碼

    詳解C語言fscanf函數(shù)讀取文件教程及源碼

    這篇文章主要為大家介紹了詳解C語言算法fscanf讀取文件示例教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-02-02
  • 解析四方定理的應(yīng)用

    解析四方定理的應(yīng)用

    所有自然數(shù)至多只要用四個數(shù)的平方和就可以表示
    2013-05-05
  • C++中測試程序運行時間的幾種方法總結(jié)

    C++中測試程序運行時間的幾種方法總結(jié)

    本文介紹了C++中測量程序運行時間的幾種方法,包括使用GetTickCount()、clock()、Boost庫的timer類以及高精度時控函數(shù)QueryPerformanceFrequency和QueryPerformanceCounter,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-09-09

最新評論

南川市| 乌拉特中旗| 佛山市| 焦作市| 彩票| 中卫市| 资中县| 乳源| 炉霍县| 丰台区| 永福县| 云梦县| 西乌珠穆沁旗| 惠东县| 新巴尔虎右旗| 祁连县| 金平| 岢岚县| 牡丹江市| 武平县| 天等县| 名山县| 顺平县| 定南县| 奉节县| 上思县| 祁阳县| 丰原市| 祁连县| 江达县| 县级市| 会泽县| 北京市| 噶尔县| 沐川县| 余干县| 冕宁县| 南召县| 赤城县| 乌苏市| 兴义市|