C 中怎樣把字串陣列中的數轉換成整形資料如 string s「1234」然後轉換成int n

2021-05-30 11:29:05 字數 4134 閱讀 1753

1樓:示申僉

可以直接來

用源atoi這個函

bai數

#include "iostream"

using namespace std;

int main()

2樓:匿名使用者

可以使用庫函式atoi。copy

一、函式名bai:atoi

二、函式宣告:

int atoi(const char *nptr);

三、頭du檔案zhi:

c語言中用stdio.h。

c++中用cstdio。

四、功dao

能:將字串nptr中的字元轉成數字並返回。具體過程為:

引數nptr字串,如果第一個非空格字元存在,是數字或者正負號則開始做型別轉換,之後檢測到非數字(包括結束符 \0) 字元時停止轉換,返回整型數。否則,返回零。

五、引數:

nptr, 要轉換的字串。如果為null會出錯。

六、返回值:

轉換後的整型數值。

七、示例**:

#include

#include

using namespace std;

int main()

c++中字串陣列轉化成int型陣列

3樓:嫑名字可以嗎

字串數bai組,裡面需要存du儲的是合法的整zhi型變數的形式,如「

dao1234」這樣的,才有可能轉版換為int型陣列。

轉換時權

,可以使用sscanf函式來實現。

**如下:

void convert_string_to_int(string *s, int *a, int len)

4樓:

看你要做路由器的東西,這寫東西有庫函式的

比如htons之類的

5樓:匿名使用者

#include

#include

#define size 3

void getresult(int d,char* list,int length)

}void main();

int b[size];

getresult(b,val,size);

for(int i=0;i

6樓:周潔倫之謎

簡單char s = "123";

int n = atoi(s);

接下來你知道了

c++字串如何轉化為數字?

7樓:

你可以叫 stringstream 和 vector 幫忙。

下面的**裡 dbl_array 既是你要建立的實數陣列(real 代表你讀到的字串)。

#include

#include

#include

using namespace std;

int main( )

值得一提的是,vector 可以被當成陣列來用,而且它比陣列優秀很多,所以你大可去掉上面的**裡多餘的最後一段,直接用 vector。

8樓:匿名使用者

1、c語言有atoi、atol、atof等庫函式,可分別把ascii編碼的字串轉化為int、long、float型別的數字。需要注意的是,這個幾個函式是c語言提供的擴充套件功能,並不是標準的函式,必須引入標頭檔案#include;若需要移植性,請用sscanf函式。

例如:int num=atoi("12345");//字串"12345"轉換為數字12345,並存入num變數中

2、sscanf函式。

sscanf函式是c語言中從一個字串中讀進與指定格式相符的資料的函式。sscanf與scanf類似,都是用於輸入的,只是後者以螢幕(stdin)為輸入源,前者以固定字串為輸入源。使用sscanf函式可以實現字串到任意資料型別的轉換。

例如:char s="12345";

int n;

sscanf(s,"%d",&n);//把字串s轉換為整形資料並存入變數n中

9樓:匿名使用者

atoi函式可以將char型別字串轉換為數字,_wtoi可以將unicode字串轉換為數字

10樓:匿名使用者

呼叫函式

strtol()

或者atoi()

傳對應引數。

11樓:幸巴達

假設原字串為s,用兩個函式,兩個陣列a,b;

一個函式將字串裡的單個字元轉換成0-9這幾個數字。將字元逐個讀入a陣列,遇到「.」則將點之前的數字合併讀入b陣列,如:

a[2]='.',b[1]=a[1]+a[0]*10,然後將a陣列清空繼續讀入「.」後面的數,直到遇到空格,如:

a[1]=a[1]+s[3]/10; a[2]=a[1]+s[4]/1e2; 然後將a[2]加到b[1]裡。

12樓:匿名使用者

對於每一個字元,如果是 >='0' && <='9' 就把這個字元 減去 '0' 就能得到相應的數字了..而對於如小數點,加號,減號這些東西只要判斷 =='+' 然後使用原來的舊可以了.具體實現自己做.

13樓:匿名使用者

sscanf函式,呵呵,就像scanf一樣用。

14樓:匿名使用者

用的是visual c++

15樓:匿名使用者

你用的是什麼c++?

在c++中char型別的陣列裡邊裝的是數字,如何轉換為int型別?

16樓:會飛的小兔子

cha和rint陣列轉換,例:

inti[2]=

charc[2]=

兩者轉換**:

inta[2]=;

charc[2];

for(inti=0;i<2;i++)c[i]=a[i];

int是將一個數值向下取整為最接近的整數的函式,為取整函式。

擴充套件資料char*、string、cstring這三種字串型別各有各的優點,比如cstring比較靈活,是基於mfc常用的型別,安全性也最高,但可移植性最差。string是使用stl時必不可少的型別,所以是做工程時必須熟練掌握的;char*是從學習c語言開始就已經和我們形影不離的了,有許多api都是以char*作為引數輸入的。

char*型別:是字元指標,在一定條件下等同於字元陣列,如果字元陣列的最後元素是"\0",則是一個c風格的字串。

17樓:匿名使用者

在標頭檔案中新增

#include

#include

void main()

{char *s;

int n;

s="1234";

n=atoi(s);

cout<:1234

標頭檔案中新增#include

用 x=atof(s)可轉化為double型,用(float)x可轉為float型

18樓:匿名使用者

#include

void main()

//用int()也可以換的方便

19樓:匿名使用者

char str="10";

int num=strtol(str,null,10);

其中,把10換成16可以

獲得16進位制數(即num=16),換成其他數字,可以獲得其他進位制的數(如換成8的話,n=8)

20樓:匿名使用者

#include

#include

#include

using namespace std;

template

t lexical_cast(u u)

int main()

21樓:匿名使用者

char dd[n];//設陣列的長度是nint ee[n];

for(int i=0;i

c 中字元陣列,如何轉成字串啊

如果你想把一個字串變成陣列,你只需要將字串初始化為陣列變數的值即可。例如 char c 10 this is 在c 裡字串在記憶體的儲存方式就是按字串陣列的形式儲存的,所以不用轉換!用cstring的getbuffer函式返回一個存放字元的頭指標,用一個char 來接受他,然後用下標操作就可以了。例...

C語言字串,求大佬,C語言字串陣列的問題

在語句for j 0 s j 0 j 中,j 記錄的是串s的字元個數,結束該迴圈時,s j 恰好是 0 在接下來的for迴圈中,第一個j 後,s j 是串s的最後一個字元,而i為0,迴圈體將s 0 與s j 進行交換,第二個j 是正常遞減,以便與i 相對應,交換s i 和s j 沒那個程式之類執行不...

php中通過字串建立陣列

先要把字串處理一下,成為php定義陣列的形式,再用eval執行 str array 15 array id 2304 fromtype item 16 array id 2313 fromtype item 17 array id 4265 fromtype item str preg replac...