C++程式將double類型的變數轉換為int型別
在C 中,int型別的變數只能保存正整數或負整數值;它們不能保存小數值。有 float 和 double 值可用於此目的。為了儲存小數點後最多七位的小數,創建了雙精度資料類型。整數到雙精確度資料類型的轉換可以由編譯器自動完成(稱為「隱式」轉換),也可以由程式設計師向編譯器明確要求(稱為「明確」轉換)。在接下來的部分中,我們將介紹各種轉換方法。
隱式轉換
編譯器會自動執行隱式類型轉換。要實現這一點,需要兩個變數——一個是浮點類型,另一個是整數類型。當我們簡單地將浮點值或變數指派給整數變數時,編譯器將處理所有其他事情。此轉換存在資料遺失的問題,因為整數變數不能包含小數點後的小數值。
文法
double input = <double value>; int output = input;
演算法
- 以雙精度值作為輸入;
- 將值賦給整數變數。
- 顯示輸出。
範例
#include <iostream> using namespace std; int solve(double value) { int opVal = value; return opVal; } int main() { double ip = 25.3056; int op = solve(ip); cout<< "The input value is: " << ip << endl; cout<< "The output value is: " << op << endl; return 0; }
輸出
The input value is: 25.3056 The output value is: 25
正如我們所看到的,轉換過程相當簡單。我們只是將輸入變數分配給輸出變數;不需要額外的程式。另外,可以看出輸出中不存在雙精度值的小數部分。
明確轉換
當程式設計師明確指示編譯器將一種資料型別轉換為另一種資料型別時,稱為明確轉換或明確型別轉換。有兩種方法可以實現此目的:一種是在賦值時明確聲明資料類型,另一種是使用 static_cast。我們之前討論過第一種方法。
演算法
- 以雙精度值作為輸入;
- 使用明確型別轉換將值指派給整數變數。
- 顯示輸出。
在賦值期間提及資料型別
有兩種不同的執行方式。一種是 C 風格的版本,另一種是函數風格的轉換。
C 風格版本
結果資料類型在來源變數之前指定,並括在括號內。
文法
double input = <double value>; int output = (int) input;
範例
#include <iostream> using namespace std; int solve(double value) { int opVal = (int)value; return opVal; } int main() { double ip = 84.4439; int op = solve(ip); cout<< "The value before conversion: " << ip << endl; cout<< "The value after conversion: " << op << endl; return 0; }
輸出
The value before conversion: 84.4439 The value after conversion: 84
函數式鑄造
當向函數提供參數時,我們會宣告結果資料型別並將來源值括在括號內。
文法
double input = <double value>; int output = int(input);
範例
#include <iostream> using namespace std; int solve(double value) { int opVal = int(value); return opVal; } int main() { double ip = -993.6571; int op = solve(ip); cout<< "The value before conversion: " << ip << endl; cout<< "The value after conversion: " << op << endl; return 0; }
輸出
The value before conversion: -993.657 The value after conversion: -993
使用 static_cast
要在預先定義類型之間進行轉換,請使用靜態強制轉換。此外,這個也可以明確引用的強制轉換負責強制執行隱式型別轉換。
文法
double input = < double value>; int output = static_cast<int>(input);
範例
#include <iostream> using namespace std; int solve(double value) { int opVal = static_cast<int>(value); return opVal; } int main() { double ip = -65.2354; int op = solve(ip); cout<< "The value before conversion: " << ip << endl; cout<< "The value after conversion: " << op << endl; return 0; }
輸出
The value before conversion: -65.2354 The value after conversion: -65
結論
從雙精確度資料類型轉換為整數資料類型總是會導致資料遺失,因為整數變數不能包含雙精確度變數的小數部分。當我們必須將一個值四捨五入到其下限值(給定小數值的最小整數值)時,這些轉換非常有用。
以上是C++程式將double類型的變數轉換為int型別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP中int類型轉換為位元組的方法詳解在PHP中,我們經常需要將整數類型(int)轉換為位元組(Byte)類型,例如在處理網路資料傳輸、檔案處理或加密演算法等場景中。本文將詳細介紹如何將int類型轉換為位元組類型,以及提供具體的程式碼範例。 1.int型別與位元組的關係在電腦領域,基本資料型別int表示整數,而位元組(Byte)是電腦儲存單位,通常是8位元二進位數據

在C++中,int型別的變數只能保存正整數或負整數值;它們不能保存小數值。有float和double值可用於此目的。為了儲存小數點後最多七位的小數,創建了雙精度資料類型。整數到雙精確度資料類型的轉換可以由編譯器自動完成(稱為「隱式」轉換),也可以由程式設計師向編譯器明確要求(稱為「明確」轉換)。在接下來的部分中,我們將介紹各種轉換方法。隱式轉換編譯器會自動執行隱式類型轉換。要實現這一點,需要兩個變數——一個是浮點類型,另一個是整數類型。當我們簡單地將浮點值或變數分配給整數變數時,編譯器將處理所有其他事情

int32的取值範圍是從-2的31次方到2的31次方減1,即-2147483648到2147483647。 int32是有符號的整數型,表示它可以表示正數、負數和零,它使用1位來表示符號位,而剩餘的31位元用來表示數值。由於一位用來表示符號位,所以int32的有效位數是31位元。

轉換方法:1、使用Itoa()函數,語法「strconv.Itoa(num)」;2、使用FormatInt()函數,可將int型資料轉換成指定進位並以字串的形式傳回,語法「strconv .FormatInt(num,10)」。

int型別在不同程式語言和不同硬體平台下所佔用的位元組數可能會有所不同。詳細介紹:1、在C語言中,int類型通常佔用2個位元組或4個位元組。在32位元系統中,int型別佔用4個位元組,而在16位元系統中,int型別佔用2個位元組。在64位元系統中,int型別可能佔用8個位元組;2、在Java中,int型別通常佔用4個位元組,而在Python中,int型別沒有位元組數限制,可以自動調整等等。

在java中,int是32位元有符號資料類型,其變數需要32位元記憶體;int資料類型的有效範圍為-2147483648至2147483647,此範圍中的所有整數稱為整數面量。一個整數字面量可以分配給一個int變量,例如“int num1 = 21;”。

double佔的位元組:1、16位元編譯器下,double佔8個位元組;2、32位元編譯器下,double佔8個位元組;3、64位元編譯器下,double佔8個位元組。

int佔4個位元組,意味著一個int變數可以儲存範圍在-2,147,483,648到2,147,483,647之間的整數值,在某些情況下也可能是2個位元組或8個位元組,int是一種常用的資料類型,用於表示整數,需要根據具體情況選擇合適的資料類型,以確保程式的正確性和效能。
