欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語(yǔ)言中實(shí)現(xiàn)itoa函數(shù)的實(shí)例

 更新時(shí)間:2017年10月31日 10:51:38   作者:默伊清風(fēng)  
這篇文章主要介紹了C語(yǔ)言中實(shí)現(xiàn)itoa函數(shù)的實(shí)例的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下

C語(yǔ)言中實(shí)現(xiàn)itoa函數(shù)的實(shí)例

一、原型:

char *itoa( int value, char *string,int radix);

二、函數(shù)說(shuō)明:

  1. value:欲轉(zhuǎn)換的數(shù)據(jù)。
  2. string:目標(biāo)字符串的地址。
  3. radix:轉(zhuǎn)換后的進(jìn)制數(shù),可以是10進(jìn)制、16進(jìn)制等。

三、函數(shù)簡(jiǎn)單實(shí)現(xiàn):

#include <iostream> 
#include <string> 
using namespace std; 
 
char* My_itoa(int value,char str[],int radix) 
{ 
  char temp[33]; 
  char *tp = temp; 
  int i; 
  unsigned v; 
  int sign; 
  char *sp; 
  if(radix > 36 || radix < 1) 
    return 0; 
  sign = (radix == 10 && value < 0); //十進(jìn)制負(fù)數(shù) 
  if(sign) 
    v = -value; 
  else 
    v = (unsigned)value; 
  while(v || tp == temp)       //轉(zhuǎn)化操作 
  { 
    i = v % radix; 
    v = v / radix; 
    if(i < 10) 
      *tp++ = i + '0'; 
    else 
      *tp++ = i + 'a' - 10; 
  } 
  if(str == 0) 
    str = (char*)malloc((tp - temp) + sign + 1); 
  sp = str; 
  if(sign)   //是負(fù)數(shù)的話把負(fù)號(hào)先加入數(shù)組 
    *sp++ = '-'; 
  while(tp > temp) 
    *sp++ = *--tp; 
  *sp = 0; 
 
  return str; 
} 
 
int main() 
{ 
  long int num; 
  int radix;   //輸入的幾進(jìn)制表示 
  char str[256]; 
  cout<<"請(qǐng)輸入整數(shù)和進(jìn)制數(shù):"; 
  cin>>num>>radix; 
  My_itoa(num,str,radix); 
  cout<<"整數(shù)轉(zhuǎn)換為字符串后:"; 
  cout<<str<<endl; 
 
  return 0; 
} 

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • C語(yǔ)言超全面講解字符串函數(shù)

    C語(yǔ)言超全面講解字符串函數(shù)

    字符串函數(shù)(String?processing?function)也叫字符串處理函數(shù),指的是編程語(yǔ)言中用來(lái)進(jìn)行字符串處理的函數(shù),如C,pascal,Visual以及LotusScript中進(jìn)行字符串拷貝,計(jì)算長(zhǎng)度,字符查找等的函數(shù)
    2022-06-06
  • 從使用角度解讀c++20 協(xié)程示例

    從使用角度解讀c++20 協(xié)程示例

    類比線程,線程是個(gè)函數(shù),把這個(gè)函數(shù)交給 創(chuàng)建線程的api,然后這個(gè)函數(shù)就變成線程了,這個(gè)函數(shù)本身沒(méi)有任何特殊的地方,就是普通函數(shù),這篇文章主要介紹了從使用角度解讀c++20 協(xié)程示例,需要的朋友可以參考下
    2023-01-01
  • 探究c++虛表實(shí)現(xiàn)代碼

    探究c++虛表實(shí)現(xiàn)代碼

    虛表是一種利用程序語(yǔ)言實(shí)現(xiàn)的dynamic dispatch機(jī)制,或者說(shuō)runtime method binding機(jī)制,也就是我們說(shuō)的多態(tài)。本文簡(jiǎn)單探究虛表實(shí)現(xiàn)方法,一起看看吧
    2021-09-09
  • C++實(shí)現(xiàn)LeetCode(107.二叉樹層序遍歷之二)

    C++實(shí)現(xiàn)LeetCode(107.二叉樹層序遍歷之二)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(107.二叉樹層序遍歷之二),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • Qt實(shí)現(xiàn)輸出日志到指定文件的操作方法

    Qt實(shí)現(xiàn)輸出日志到指定文件的操作方法

    這篇文章主要介紹了Qt實(shí)現(xiàn)輸出日志到指定文件的操作方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • 對(duì)C語(yǔ)言編程標(biāo)準(zhǔn)以及聲明的基本理解

    對(duì)C語(yǔ)言編程標(biāo)準(zhǔn)以及聲明的基本理解

    這篇文章主要介紹了對(duì)C語(yǔ)言編程標(biāo)準(zhǔn)以及聲明的基本理解,有助于對(duì)C語(yǔ)言編寫時(shí)的結(jié)構(gòu)有更加清晰的認(rèn)識(shí),需要的朋友可以參考下
    2015-11-11
  • C語(yǔ)言 volatile與const同時(shí)使用應(yīng)注意的問(wèn)題

    C語(yǔ)言 volatile與const同時(shí)使用應(yīng)注意的問(wèn)題

    “volatile”的含義是“請(qǐng)不要做沒(méi)譜的優(yōu)化,這個(gè)值可能變掉的”,而并非“你可以修改這個(gè)值”。因此,它們本來(lái)就不是矛盾的
    2013-09-09
  • C語(yǔ)言編程遞歸算法實(shí)現(xiàn)漢諾塔

    C語(yǔ)言編程遞歸算法實(shí)現(xiàn)漢諾塔

    遞歸,大家都了解,著名的斐波那契數(shù),就為該知識(shí)點(diǎn)的經(jīng)典例題。今天來(lái)看看更為經(jīng)典的遞歸題漢諾塔不過(guò)這其實(shí)是數(shù)學(xué)問(wèn)題,先來(lái)看看漢諾塔
    2021-09-09
  • 詳解C++中的析構(gòu)函數(shù)

    詳解C++中的析構(gòu)函數(shù)

    這篇文章主要介紹了C++中的析構(gòu)函數(shù)的相關(guān)知識(shí),文中講解非常詳細(xì),代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • OpenCV實(shí)現(xiàn)霍夫變換直線檢測(cè)

    OpenCV實(shí)現(xiàn)霍夫變換直線檢測(cè)

    這篇文章主要為大家詳細(xì)介紹了OpenCV實(shí)現(xiàn)霍夫變換直線檢測(cè),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06

最新評(píng)論