C 資料型別轉換

2021-10-09 14:57:40 字數 2696 閱讀 5889

資料型別的轉換主要是int和double型別之間的轉換,可以直接用括號來表示資料轉換,也可以使用convert.toint32和convert.todouble來進行轉換。

最主要的是隱式轉換和顯式轉換,int轉double隱式轉換,多小數;double轉int顯式轉換,丟精度

//資料型別

int num =

100;

//存整數

double dounumber =

30.5

;//存小數

//字元不能為空,最少是乙個,最多也是乙個

char ch =

'5';

//字元型別

//字串,可以為空,也可以為多個

string str =

"小楊又帥了"

;//精度的問題,有小數的時候後面必須加m

1、型別自動轉換

參與運算(算術運算和賦值運算)的運算元和結果的型別必須一致,當不一致時,有下面的條件,系統自動完成轉換(隱式轉換)

-兩種型別相容

例如 int和double(都是數字型別,可以相容)

或者是目標型別大於源型別

例如:double>int

int型別的資料可以自動轉換為double型別的資料,

double型別的資料可以表示int型別的資料。

//自動型別轉化

//佔位符的使用

int num1 =10;

int num2 =3;

double remainder =num1*

1.0/num2;

//int型別的資料可以自動的轉換成double型別的資料

//或者說int型別的資料可以隱式轉換成double型別的資料

//使用佔位符的方法保留幾位小數

console.

writeline(""

,remainder)

; console.

readkey()

;

2、隱式轉換和顯式轉換

int轉double隱式轉換,多小數

double轉int顯式轉換,丟精度

double num1=

303.6

;int num2303;

//double型別轉換為int型別,丟精度

int num=

(int

)num1;

//顯示轉換,或者說強制型別轉換

//在要轉換的資料前面加括號,裡面寫我們要轉換成的型別。

console.

writeline

(num)

;console.

readkey()

;

double num1 =

90.4

;int number =

(int

)num1;

console.

writeline

(number)

;console.

readkey()

;

3、使用convert轉換

convert 考慮資料意義的轉換,convert是乙個加工、改造的過程

通過convert.toint32(能轉換成int型別的資料)來把其他型別資料轉換成int型別。

通過convert.todouble(能轉換成double型別的資料)來把其他型別資料轉換成double型別。

//convert是對資料意義的轉換

console.

writeline

("請輸入你的語文成績");

string strchinese = console.

readline()

; console.

writeline

("請輸入你的數學成績");

string strmath = console.

readline()

;//都要是數字型別的資料,才能計算

//把字串型別的語文成績轉換成int型別的資料

int chinese = convert.

toint32

(strchinese)

;//把字串型別的數學成績轉換成int型別的資料

int math = convert.

toint32

(strmath)

;//在輸入的時候,不考慮輸入字母,使用try-catch 來解決問題

int sum =chinese + math;

console.

writeline

("總成績為"

, sum)

; console.

readkey()

;

C 資料型別轉換

轉cstring cstring.format t d int 轉char 1.itoa int,char 10 10為十進位制 沒有越界檢查 2.memset szbuf,0,sizeof szbuf snprintf szbuf,sizeof szbuf d int 轉tchar itoa in...

c 資料型別轉換

隱式型別轉換 這些轉換是 c 預設的以安全方式進行的轉換,不會導致資料丟失。例如,從小的整數型別轉換為大的整數型別,從派生類轉換為基類。轉換規則從儲存範圍小的型別到儲存範圍大的型別。整數具體規則為 byte short char int long float double也就是說byte型別的變數可...

C 資料型別轉換

include include using namespace std 從型別t轉換為型別k template classt,class k k convert t tmp intmain home hejinyang clion2016.2 system cmake generated mypro...