C++ 中的數據類型

C++規定在創建一個變量或者常量時,必須要指定出相應的數據類型,否則無法給變量分配內存.

1 整型

作用:整型變量表示的是整數類型的數據

C++中能夠表示整型的類型有以下幾種方式,區別在于所占內存空間不同

數據類型占用空間取值范圍
short(短整型)2字節(-2^15~2^15-1)
int(整形)4字節(-2^31~2^31-1)

long(長整型)

Windows為4字節,Linux為4字節(32位),8字節(64位)(-2^31~2^31-1)
long long(長長整形)8字節(-2^63~2^63-1)

數據類型存在的意義:給變量分配合適的內存空間。

#include<iostream>
using namespace std;int main()
{//整型//1、短整型short num1 = 10;//2、整形int num2 = 10;//3、長整型long num3 = 10;//4、長長整型long long num4 = 10;cout << "num1 = " << num1 << endl;cout << "num2 = " << num2 << endl;cout << "num3 = " << num3 << endl;cout << "num4 = " << num4 << endl;system("pause");return 0;}

日常開發中最常用的是int

2 sizeof關鍵字

作用:利用sizeof關鍵字可以統計數據類型所占內存大小

語法:sizeof(數據類型/變量)

示例:

int main() {short mum = 10;cout << "short 類型所占內存空間為:" << sizeof(short) << endl;cout << "num所占內存空間為:" << sizeof(num) << endl;cout << "int 類型所占內存空間為:" << sizeof(int) << endl;cout << "long 類型所占內存空間為:" << sizeof(long) << endl;cout << "long long 類型所占內存空間為:" << sizeof(long long) << endl;system("pause");return 0;}

3 實型(浮點型)

浮點型變量分為兩種:

  1. 單精度float
  2. 雙精度double

兩者的區別在于表示的有效數字范圍不同

數據類型占用空間有效數字范圍

float

4字節7位有效數字

double

8字節15~16位有效數字

示例:

int main() {//單精度float f1 =3.1415926f;cout << "f1 =" << f1 <<endl;//雙精度double d1 = 3.1415926;cout << "d1 =" << d1 <<endl;// 默認情況下 輸出一個小數,會顯示6位有效數字//統計float和double占用的內存空間cout << "float占用內存空間為:" << sizeof(float) << endl;cout << "double占用內存空間為:" << sizeof(double) << endl;//科學計數法float f2=3e2; //3*10^2;cout << "f2 = " << f2 << endl;float f3=3e-2; //3*0.1^2;cout << "f3 = " << f3 << endl;system ("pause");return 0;}

4 字符型變量

作用:字符型變量用于顯示單個字符

語法:char ch = 'a';

注意1:在顯示字符型變量時,用單引號將字符括起來,不要用雙引號

注意2:單引號內只能有一個字符,不可以是字符串

  • C和C++中字符型變量只占用1個字節
  • 字符型變量并不是把字符本身放到內存中存儲,而是將對應的ASCII編碼放入到存儲單元

示例:

#include<iostream>
using namespace std;int main() {//1、字符型變量創建方式char ch = 'a';cout << ch << end;//2、字符型變量所占內存大小cout << "char字符型變量所占內存:" << sizeof(char) << endl;//3、字符型變量常見錯誤//char ch2 = "b";//創建字符型變量的時候,要用單引號//char ch2 = 'abcdef';//創建字符型變量的時候,單引號內只能有一個字符//4、字符型變量對應ASCII編碼//a---97//A---65cout << (int)ch << endl;system("pause");return 0;}

附 ASCII碼表格

5 轉義字符

作用:用于表示一些不能顯示出來的ASCII字符

現階段我們常用的轉義字符有: \n? \\? \t

轉義字符含義ASCII碼值(十進制)
\a警報007
\b退格(BS),將當前位置移到前一列008
\f換頁(FF),將當前位置移到下頁開頭012
\n換行(LF),將當前位置移到下一行開頭010
\r回車(CR),將當前位置移到本行開頭013
\t水平制表(HT)(跳到下一個TAB位置)009
\v垂直指標(VT)011
\\代表一個反斜線字符“\”092
\'代表一個單引號(撇號)字符039
\"代表一個雙引號字符034
\?代表一個問號063
\0數字0000
\ddd8進制轉義字符,d范圍0~73位八進制
\xhh16進制轉義字符3位16進制

示例:

int main() {cout << "\n" << endl;cout << "\\" << endl;cout << "\tHello" << endl;system("pause");return 0;
}

6 字符串型

作用:用于表示一串字符

兩種風格

1.C風格字符串:char 變量名[ ]?= "字符串值"

示例:

int main() {char str1[] = "hello world";cout << str1 << endl;system("pause");return 0;}

?注意:C風格的字符串要用雙引號括起來

2.C++風格字符串:string 變量名 = “字符串值”

示例:

int main() {string str = "hello world";cout << str << endl;system("pause");return 0;}

?注意:C++風格字符串,需要加入頭文件#include<string>

7 布爾類型 bool

作用:布爾數據類型代表真或假的值

bool類型只有兩個值:

  • true --- 真(本質是1)
  • false --- 假(本質是0)

bool類型占1個字節大小

示例:

int main() {bool flag = true;
cout << flag << endl;//1flag = false;
cout << flag << endl;//0cout << "size of bool =" << sixeof(bool) << endl;//1system("pause");
return 0;}

?8 數據的輸入

作用:用于從鍵盤獲取數據

關鍵字:cin

語法:cin >> 變量

示例:

int main() {//整形輸入int a = 0;cout << "請輸入整形變量" << endl;cin >> a;cout << a << endl;//浮點型輸入double d = 0;cout << "請輸入浮點型變量:" << endl;cin >> d;cout << d << endl;//字符型輸入char ch = 0;cout << "請輸入字符型變量:" << endl;cin >> ch;cout << ch << endl;//字符串型輸入string str = "hello";cout << "請輸入字符串:" << endl;cin >> str;cout << str << endl;//布爾型輸入bool flag = false;cout << "請輸入布爾型變量:" << endl;cin >> flag;system("pause");return 0;}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/38699.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/38699.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/38699.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python(6)numpy的使用詳細講解

在numpy中&#xff0c;最基本的數據結構是數組&#xff0c;因此我們首先需要了解如何創建一個數組。numpy提供了多種數組創建方法&#xff0c;包括從列表或元組創建、從文件中讀取數據、使用特定函數創建等。下面是一些常用的創建方法&#xff1a; 一、創建數組 1. 從列表或元…

【MySQL備份】Percona XtraBackup基礎篇

目錄 1.關于Percona XtraBackup 2. Percona XtraBackup有哪些特點&#xff1f; 3.安裝Percona XtraBackup 3.1.環境信息 3.2.安裝步驟 4. xtrabackup內部流程圖 5.Percona XtraBackup基礎語法 5.1.全量備份 5.2.增量備份 5.2.1.基于全量備份的增量備份 5.2.2.基于前…

[leetcode]max-consecutive-ones 最大連續1的個數

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int findMaxConsecutiveOnes(vector<int>& nums) {int maxCount 0, count 0;int n nums.size();for (int i 0; i < n; i) {if (nums[i] 1) {count;maxCount max(maxCount, count);} else…

安裝和微調大模型(基于LLaMA-Factory)

打開終端&#xff08;在Unix或macOS上&#xff09;或命令提示符/Anaconda Prompt&#xff08;在Windows上&#xff09;。 創建一個名為lora的虛擬環境并指定Python版本為3.9。 conda create --name lora python3.9激活新創建的虛擬環境。 conda activate lora克隆項目。 git …

詳解COB顯示屏的技術特點

COB&#xff08;Chip on Board&#xff09;顯示屏作為一種采用倒裝COB封裝技術的LED顯示屏&#xff0c;在顯示效果以及使用穩定性跟防護性方面&#xff0c;擁有更大優勢&#xff0c;今天跟隨COB顯示屏廠家中品瑞科技一起來看看&#xff0c;COB顯示屏的技術特點&#xff1a; 1、…

如何在OpenEuler 上快速部署一套Zabbix7.0監控系統

如何在OpenEuler 上快速部署一套Zabbix監控系統 一、環境信息 用途機器IP操作系統備注zabbix-server172.22.33.180openeuler 22.03 LTS SP37.0 LTS 版本&#xff0c;容器部署zabbix-agent172.16.10.182openeuler 22.03 LTS SP37.0 源碼編譯部署 二、Docker 部署 2.1 二進制…

【小白入門】關于視頻剪輯該自學還是報課?

★解密&#xff1a;【賦能計劃—剪輯小白入門】 ★ 在這個視頻流量為王的時代&#xff0c;人人都想打造屬于自己的IP&#xff0c;今年更是有許多企業家也紛紛下場干起來了&#xff0c;網上曾流行這樣的一句話&#xff1a;“現在人們的生活方式改變了&#xff0c;所有事情都值得…

Anti-Canine Heartworm Antibody (Chicken) - HRP Conjugated

犬心絲蟲&#xff08;學名Dirofilaria immitis&#xff09;是一種寄生絲蟲&#xff0c;通過蚊子叮咬而傳播。感染犬在早期階段&#xff0c;大多不會出現癥狀。隨著病情發展&#xff0c;將出現咳嗽、呼吸困難等癥狀&#xff0c;并伴有右心功能衰竭&#xff0c;最終全身衰弱或虛脫…

檢索增強生成RAG系列3--RAG優化之文檔處理

在上一章中羅列了對RAG準確度的幾個重要關鍵點&#xff0c;主要包括2方面&#xff0c;這一章就針對其中一方面&#xff0c;來做詳細的講解以及其解決方案。 目錄 1 文檔解析1.1 文檔解析工具1.2 實戰經驗1.3 代碼演示 2 文檔分塊2.1 分塊算法2.2 實戰經驗2.3 代碼演示 3 文檔e…

VLAN基礎

一、什么是Vlan VLAN&#xff08;Virtual Local Area Network&#xff09;是虛擬局域網的簡稱&#xff0c;是一種將單一物理局域網&#xff08;LAN&#xff09;在邏輯層面上劃分為多個獨立的廣播域的技術。每個VLAN都是一個獨立的廣播域&#xff0c;其內部主機可以直接通信&am…

python自動化辦公之shutil

目錄 1復制文件&#xff0c;此時存在2份相同文件 2移動文件&#xff0c;此時僅有1份文件 3刪除文件&#xff0c;此時0份文件 用到的庫&#xff1a;shutil&#xff0c;os 實現的效果&#xff1a;復制文件&#xff0c;移動文件&#xff0c;刪除文件 代碼&#xff1a; 1復制…

并發請求數量限制

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>并發請求數量限制</title> </head> <…

使用Colly庫進行高效的網絡爬蟲開發

引言 隨著互聯網技術的飛速發展&#xff0c;網絡數據已成為信息獲取的重要來源。網絡爬蟲作為自動獲取網頁內容的工具&#xff0c;在數據分析、市場研究、信息聚合等領域發揮著重要作用。本文將介紹如何使用Go語言中的Colly庫來開發高效的網絡爬蟲。 什么是Colly庫&#xff1…

力扣974.和可被K整除的子數組

力扣974.和可被K整除的子數組 將余數相同的做差 若為負數要翻正再存入哈希表若為正數要存入哈希表統一操作 (sj % k k ) % k class Solution {public:int subarraysDivByK(vector<int>& nums, int k) {int n nums.size();vector<long> s(n1);for(int i0;i…

超聲波清洗機怎么選?極力推薦四款口碑大牌超聲波清洗機

相信大家都知道超聲波清洗機&#xff0c;每次眼鏡臟的時候&#xff0c;去眼鏡店里讓老板幫忙清洗&#xff0c;她們用的就是超聲波清洗機&#xff0c;通過超聲波的原理深入物品深處清潔&#xff0c;清潔效果非常好。相對手洗的方式&#xff0c;超聲波清洗機能夠保護鏡片在清洗過…

[240701] 蘋果設備持久耐用,人工智能戰略成未來致勝關鍵

目錄 蘋果設備持久耐用&#xff0c;人工智能戰略成未來致勝關鍵 蘋果設備持久耐用&#xff0c;人工智能戰略成未來致勝關鍵 蘋果公司產品策略的轉變及其對未來發展的影響。 現狀&#xff1a; 蘋果硬件創新速度放緩&#xff0c;產品外觀和設計迭代周期變長&#xff0c;導致消…

【開放詞匯分割】Side Adapter Network for Open-Vocabulary Semantic Segmentation

論文鏈接&#xff1a;Side Adapter Network for Open-Vocabulary Semantic Segmentation 代碼鏈接&#xff1a;https://github.com/MendelXu/SAN 作者&#xff1a;Mengde Xu,Zheng Zhang,Fangyun Wei,Han Hu,Xiang Bai 發表單位&#xff1a;華中科技大學、微軟亞洲研究院 會…

Vue 快速入門案例

步驟一&#xff1a;引入vue.js文件 添加<script>標簽并標明路徑 步驟二&#xff1a;定義Vue對象 el Vue接管區域 data 定義數據模型 步驟三&#xff1a;編寫視圖層的展示 v-model 綁定數據模型 {{要展示的數據模型}} 運行效果 總結 文本框里的值&a…

雪花算法的原理以及實現

文章目錄 一、簡介二、算法優缺點三、算法實現 一、簡介 有這么一種說法&#xff0c;自然界中并不存在兩片完全一樣的雪花的。每一片雪花都擁有自己漂亮獨特的形狀、獨一無二。雪花算法也表示生成的ID如雪花般獨一無二。 雪花算法 &#xff08;SnowFlake &#xff09;算法&am…

幾度互聯網站群管理系統全媒體解決方案

隨著高考的結束&#xff0c;各高校開啟了緊張的招生宣傳工作&#xff0c;幾度互聯網站群系統助力各高校招生宣傳。 學校官方網站是互聯網時代學校對外交流的重要途徑和信息公開的主要載體&#xff0c;是展示學校形象、密切聯系師生的重要窗口&#xff0c;是加強校園宣傳思想工…