聯合、枚舉、類型別名

數據類型:

  • 已學--整數、實數、字符、字符串、數組、指針、結構
  • 待學--向量(vector)類型:優于數組
  • 非主流的類型--聯合(union)、枚舉(enum)

一、聯合

  • 聯合類似于結構,可以容納多種不同類型的值。
  • 區別:聯合每次只能存儲這些值中的某一個。
  • 例如:我們要定義一個變量來存放某種密碼,我們可以選擇是你女朋友的生日、身份證最后4位數字或者你養的寵物的名字等等。使用聯合類型是一個不錯的選擇。

1.聯合的基本語法格式

	union mima //使用union關鍵字 {unsigned long birthday;//使用生日作為密碼 unsigned short ssn;// 使用身份證后四位作為密碼 char *pet;//使用寵物名字作為密碼 	};  //一定要加分號; 

2.創建union類型的變量?

	mima pwd; //創建一個mima聯合類型的變量pwd 

3.對成員進行賦值

	//對成員進行賦值pwd.birthday=200000616;//將 200000616 存入 聯合的birthday成員里 pwd.ssn=0226;//將 0226 存入 聯合的ssn成員里 , 并丟棄(覆蓋) birthday成員里的值 pwd.pet="Lili";//將 Lili 存入 聯合的pet成員里 ,并丟棄(覆蓋) ssn成員里的值  

#include <iostream>int main()
{union mima //使用union關鍵字 {unsigned long birthday;//使用生日作為密碼 unsigned short ssn;// 使用身份證后四位作為密碼 char *pet;//使用寵物名字作為密碼 	};  //一定要加分號; mima pwd; //創建一個mima聯合類型的變量pwd //對成員進行賦值pwd.birthday=200000616;//將 200000616 存入 聯合的birthday成員里 std::cout<<pwd.birthday<<"\n";  //200000616pwd.pet="xaoibai";//將 0226 存入 聯合的ssn成員里 , 并丟棄(覆蓋) birthday成員里的值 std::cout<<pwd.pet<<"\n"; //xaoibaistd::cout<<pwd.birthday<<"\n"; //4710402:xaoibai這個字符串的第一個元素的地址 (字符串的首地址) return 0;} 



二、枚舉

1.枚舉類型的基本語法格式

//定義枚舉類型 
enum weekdays{ Monday, Tuesday,Wednesday, Thursday, Friday};//注意:這里不需要使用引號,因為枚舉值不是字符串 

2.創建枚舉enum類型的變量

	//創建枚舉類型weekdays的變量 weekdays today;

3.對成員進行賦值

	//對枚舉類型的變量today賦值 today=Monday; //值只能w為定義好的枚舉類型std::cout<<today<<"\n"; //0   編輯器會按照各個枚舉值在定義時出現的先后順序把他們與0~n-1的整數關聯起來(n是枚舉值的總總個數)today=Tuesday;std::cout<<today<<"\n"; //1

4.使用枚舉類型的連個好處:?

  • 它們對變量的可取值加以限制
  • 它們可以用作switch條件的case標號。(因為字符串是不能作為標號用的)
#include<iostream>int main()
{//定義枚舉類型 enum weekdays{ Monday, Tuesday,Wednesday, Thursday, Friday};//注意:這里不需要使用引號,因為枚舉值不是字符串 //創建枚舉類型weekdays的變量 weekdays today;//對枚舉類型的變量today賦值 today=Monday; //值只能w為定義好的枚舉類型
//	std::cout<<today<<"\n"; //0   編輯器會按照各個枚舉值在定義時出現的先后順序把他們與0~n-1的整數關聯起來(n是枚舉值的總總個數)today=Tuesday;
//	std::cout<<today<<"\n"; //1switch(today){case Tuesday:std::cout<<"今天不是星期一";} } 



三、類型別名

  • Typedef 保留字,使用它可以為一個類型定義創建一個別名。
  • 例如,我們不喜歡使用 int* 來創建指針,可以像下邊這樣定義一個類型別名:
typedef int* intPointer;

????????????????????????????????????????(這樣,intPointer 就等于 int*)

在此之后,我們就可以像下面這樣來定義整型指針了:

 intPointer myPointer;


未完待續。。。?

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

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

相關文章

form+ffmpeg+opus錄音壓縮音頻

說明&#xff1a; formffmpegopus錄音壓縮音頻 效果圖&#xff1a; step1:opus格式錄音 C:\Users\wangrusheng\RiderProjects\WinFormsApp11\WinFormsApp11\Form1.cs using System; using System.Diagnostics; using System.IO; using System.Windows.Forms;namespace WinFo…

軟件工程面試題(三十)

將ISO8859-1字符串轉成GB2312編碼&#xff0c;語句為&#xff1f; String snew String(text.getBytes(“iso8859-1”),”gb2312”). 說出你用過的J2EE標準的WEB框架和他們之間的比較&#xff1f; 答&#xff1a;用過的J2EE標準主要有&#xff1a;JSP&Servlet、JDBC、JNDI…

每日一題(小白)分析娛樂篇10

由題知計算階乘之和&#xff0c;我們可以用for循環計算每一次的值把總和放在BigInteger然后進行判斷。但是這樣明顯過于麻煩&#xff0c;我們可以利用數學的本質去思考這個問題&#xff0c;以0結尾的數字乘以一個數字必定為0&#xff0c;階乘之中必定有2和5結尾的數字相乘得0&a…

【51單片機】2-3【I/O口】震動傳感器控制LED燈

1.硬件 51最小系統LED燈模塊震動傳感器模塊 2.軟件 #include "reg52.h"sbit led1 P3^7;//根據原理圖&#xff08;電路圖&#xff09;&#xff0c;設備變量led1指向P3組IO口的第7口 sbit vibrate P3^3;//震動傳感器DO接P3.3口void Delay2000ms() //11.0592MHz {…

Linux網絡狀態監控利器:netstat與ping命令詳解

網絡狀態監控利器&#xff1a;netstat與ping命令詳解 在Linux系統的網絡管理中&#xff0c;實時監控網絡狀態是確保系統穩定運行的關鍵環節。netstat和ping作為兩個常用的網絡監控工具&#xff0c;分別提供了詳細的網絡狀態信息和網絡連通性檢測功能。本文將全面解析這兩個命令…

【spring cloud Netflix】Eureka注冊中心

1.概念 Eureka就好比是滴滴&#xff0c;負責管理、記錄服務提供者的信息。服務調用者無需自己尋找服務&#xff0c;而是把自己的 需求告訴Eureka&#xff0c;然后Eureka會把符合你需求的服務告訴你。同時&#xff0c;服務提供方與Eureka之間通過“心跳” 機制進行監控&#xf…

Linux中C++ gdb調試命令

編譯可執行文件需要帶上-g選項參數 輸入回車則重復執行上一次命令&#xff1b; 進入gdb&#xff1a; gdb 程序名運行gdb命令&#xff1a; r打斷點命令&#xff1a; b 行號查看斷點命令&#xff1a; i b打印變量命令&#xff1a; p 變量名持續查看變量命令&#xff1a; d…

【進收藏夾吃灰】機器學習學習指南

博客標題URL【機器學習】線性回歸&#xff08;506字&#xff09;https://blog.csdn.net/from__2025_03_16/article/details/146303423

【通信觀察家】2025年Q1通信業技術躍遷與生態重構:AI+低空經濟雙輪驅動

一、行業動態與投資熱點 1. 算力投資加速 1) 騰訊2024年財報顯示&#xff0c;AI相關資本開支同比增長221.27%&#xff0c;2025年計劃繼續加碼AI原生應用研發及算力基礎設施建設&#xff0c;其自研混元T1模型(Hybrid-Mamba-Transformer架構)已上線并開放云服務。 2) 中國移動和…

基于 Vue + Django + MySQL 實現個人博客/CMS系統

目錄 1. 環境搭建與項目初始化 后端 (Django) 2. 數據庫模型設計 用戶認證模型 (Django Auth) 文章模型 (models.py) 全文索引優化 3. 后端API開發 (Django REST Framework) 用戶注冊/登錄 文章發布與搜索 4. 前端實現 (Vue 3) 項目初始化 核心功能實現 5. 訪問統…

從全球首發到獨家量產,遠峰科技持續領跑數字鑰匙賽道

數字車鑰匙「新紀元」即將開啟&#xff0c;星閃數字鑰匙正式進入量產周期。 隨著汽車智能化快速普及&#xff0c;數字鑰匙的搭載量正在快速提升。根據高工智能汽車研究院的數據&#xff0c;2024年中國市場乘用車前裝標配搭載數字鑰匙的新車交付量超過1000萬輛&#xff0c;同比…

C#高級:利用LINQ進行實體列表的集合運算

問題引入&#xff1a; Teacher實體的唯一標識符是Name和Classes字段&#xff08;或者說這兩個字段唯一確定一條數據&#xff09;&#xff0c;如何對兩個實體列表做交集、差集運算呢&#xff1f;&#xff08;并集直接調用AddRange方法即可&#xff09; 一、重寫方法實現 1.原…

C++\MFC鎖lock從專家到小白

C mutex # include <mutex> std::mutex m_lock; void CMainWnd::function() {std::lock_guard<std::mutex> lock(m_lock);... }僅限同一進程內。阻塞等待&#xff1a;當線程 A 持有鎖時&#xff0c;線程 B 嘗試獲取同一互斥鎖時&#xff0c;會進入阻塞狀態&#x…

COBOL語言的數據庫交互

COBOL語言的數據庫交互 引言 隨著信息技術的不斷發展&#xff0c;數據庫管理系統&#xff08;DBMS&#xff09;已經成為現代應用程序中不可或缺的組成部分。在眾多編程語言中&#xff0c;COBOL&#xff08;Common Business-Oriented Language&#xff09;以其在商業應用中的穩…

黑馬點評_知識點

將手機驗證碼保存到HttpSession中進行驗證&#xff08;感覺已經過時&#xff09; Controller中的參數有HttpSession&#xff0c;存驗證碼session.setAttribute(SystemConstants.VERIFY_CODE, code); 其他的都是邏輯代碼 Cookie的缺點 什么是Session集群共享問題&#xff1f; …

CSS語言的硬件驅動

CSS語言的硬件驅動探討 引言 隨著信息技術的迅猛發展&#xff0c;硬件和軟件之間的交互愈發復雜&#xff0c;特別是在嵌入式系統、物聯網設備等領域&#xff0c;硬件驅動程序的開發變得至關重要。而在眾多編程語言中&#xff0c;CSS&#xff08;層疊樣式表&#xff09;作為一…

K8s中CPU和Memory的資源管理

資源類型 在 Kubernetes 中&#xff0c;Pod 作為最小的原子調度單位&#xff0c;所有跟調度和資源管理相關的屬性都屬于 Pod。其中最常用的資源就是 CPU 和 Memory。 CPU 資源 在 Kubernetes 中&#xff0c;一個 CPU 等于 1 個物理 CPU 核或者一個虛擬核&#xff0c;取決于節…

解鎖 DeepSeek 與 Matlab:攻克科研難題的技術利刃

技術點目錄 第一章、MATLAB 2024b深度學習工具箱新特性簡介第二章、卷積神經網絡&#xff08;Convolutional Neural Network, CNN&#xff09;第三章、模型可解釋性與特征可視化Model Explanation and Feature Visualization第四章、遷移學習算法&#xff08;Transfer Learning…

藍橋杯_PCF8591

目錄 一 前言 二 引言 三 PCF8591介紹 &#xff08;1&#xff09;I2C通信 &#xff08;2&#xff09;原理圖中的8591 四 代碼層面 &#xff08;1&#xff09;根據題目所給的示范代碼&#xff0c;實現ADC 1 為什么需要返回值&#xff0c;同時返回值是unsigned char&#x…

Dify案例-接入飛書云文檔實現需求質量評估

dify接入飛書云文檔實現需求質量評估 1. 背景與目標2. 系統架構與流程2.1 整體架構圖2.2 核心流程2.3 dify工作流概覽 3. 實現細節3.1 文檔提取3.2 需求評估3.3 參數提取3.4 創建飛書云文檔 4. 難點總結4.1 提示詞編寫4.2 關聯飛書云文檔4.2.1 安裝飛書云文檔插件并關聯到飛書自…