C/C++中switch引數型別
switch(expr1)中,expr1是一個整數表示式,整數表示式可以是int基本型別或Integer包裝型別,由於,byte,short,char都可以隱含轉換為int,所以,這些型別以及這些型別的包裝型別也是可以的。
總結:因此傳遞給 switch 和case 語句的引數應該是 int、 short、 char 或者 byte,還有enum。
但 long,string 都不能作用於swtich。
在jdk 1.7中switch的引數型別可以是字串型別。
轉自:http://blog.csdn.net/guanghuilove/article/details/6753110
相關推薦
C/C++中switch引數型別
switch(expr1)中,expr1是一個整數表示式,整數表示式可以是int基本型別或Integer包裝型別,由於,byte,short,char都可以隱含轉換為int,所以,這些型別以及這些型別的包裝型別也是可以的。 總結:因此傳遞給 switch 和cas
C++ 中引用引數型別不匹配造成的編譯問題
Ros裡有個函式,介面是這樣的:void ros::init(int &argc, char **argv, const std::string& name, uint32_t options = 0);當按如下方式呼叫時:int StartRos(long long argc,char **
C# 8中的範圍型別(Range Type)
C# 8.0中加入了一個新的範圍型別(Range Type)。 這裡我們首先展示一些程式碼,並一步一步為程式碼新增一些不同的東西, 為大家展示一下範圍型別的功能和用法。 我們最原始的程式碼如下: static void Main(string[] args) { var myArray =
c語言中的資料型別
c語言中的資料型別 "資料型別": { "基本資料型別":{ //%d 以整數型輸出 "整型":{ //int 4位元組 -
C語言中函式引數傳遞的兩種方式
問題及程式碼: /* *完成日期:2018.10.2 * *問題描述:c語言函式引數傳遞的兩種方式 * */ #include <stdio.h> void swap1(int x, int y); //對交換函式myswap1的提前宣告 (傳值
C語言中的強制型別轉換
先直接放程式吧,後面還有總結。 -------------------------------------------start----------------------------------------------- #include<stdio.h>#include<string
C語言中的基本型別
1、整形 int a = 10 ; 十進位制,格式化輸出:%i int b = 0743;八進位制,格式化輸出:%o %#o(輸出前導符號0) int c = 0x7f3d;十六進位制,格式化輸出:%x %#x(輸出前導符號0x) 2、浮點型 f
c語言中可變引數的實現
(一) 寫一個簡單的可變引數的C函式 下面我們來探討,如何寫一個簡單的可變引數的C函式。寫可變引數的C函式要在程式中用到以下這些巨集: void va_start( va_list arg_ptr, prev_param ); type va_arg( va_list
C語言中沒有String型別
C 是靜態弱型別語言。意味著型別(包括 size 等資訊,你使用 sizeof 就是編譯時候得到的)在編譯的時候就能確定下來。 它的原生簡單型別有 char int float 這樣的,原生複合型別有 struct,以及“偉大”的 指標型別 primitive_type * . 這些型別的設計是在編譯時可以
C語言中各個資料型別的取值範圍
因為CPU的差異,各系統中的資料型別所佔的位元組數(bytes)不同,二進位制位數(bit)也不同。那麼怎樣才能知道自己系統的資料型別的位元組數,位數呢? 授之以魚不如授之以漁,大家可以自己從電腦裡獲取這些資訊。 首先我們知道1個位元組等於8個位,可以用sizeof()關鍵字設計以下程式解決: /*獲取
C語言中關於char型別儲存的分析 以及signed與unsigned的區別
char型別儲存的分析 char和signed char 大家對char型別相信一定不會陌生的ANSI C 提供了3種字元型別,分別是char、signed char、unsigned char
C語言中變數儲存型別有哪些?
變數的儲存型別是C語言的重要組成部分,也是C語言學習的基礎。那C語言中變數的儲存型別有哪幾種呢?在程式設計過程中又該怎樣運用呢?就這一問題,我今天給大家介紹一下!總的來說,C語言中變數的儲存型別可以分為四種,他們分別是自動變數、靜態變數、外部變數和暫存器變數這四種,
C語言中各種資料型別的大小
C語言 1.幾條規則 (1)char型別一般是8bit,但ANSI C裡沒有硬性規定其長度,某些嵌入式編譯器可能是16bit (2)short和long型別的長度不相同 (3)int型別通常同具體機器的物理字長相同 (4)short通常是16bits,
C語言中各種資料型別長度
C語言的基本資料型別有以下幾個: int 整型 char 字元型 float 單精度浮點型 double 雙精度浮點型 另外,在基本資料型別基礎上附加一些限定詞, 得到擴充的資料型別。short,long可以應用到整型, unsigned可以應用到整型和字元型: short int(或short) 短整型 l
C語言中幾種型別所佔位元組數
最近經常會遇到C語言中各型別變數所佔位元組數的問題,索性在這裡做一個整理總結。 其實C標準並沒有具體給出規定哪個基本型別應該是多少個位元組數,而且這個也與OS、編譯器有關,比如同樣是在32位作業系統,VC++的編譯器下int型別為4個位元組,而在tuborC下
在C語言中各種資料型別各佔多少位
(一)32位平臺:分為有符號型與無符號型。有符號型:short 在記憶體中佔兩個位元組,範圍為-2^15~(2^15-1)int 在記憶體中佔四個位元組,範圍為-2^31~(2^31-1)long在記憶體中佔四個位元組,範圍為-2^31~2^31-1無符號型:最高位不表示符號位unsigned short 在
C語言中各種資料型別中所佔的位元組和取值範圍
問題:C語言資料型別取值範圍,是根據什麼定義這個範圍取值? 首先,在計算機中所有資料都是用一個一個的二進位制位(0或1)儲存的,單位稱為:位(bit);然後,每8位二進位制數(比如01010001)代表一個位元組(byte)大小,即1位元組=8位;再然後,C語言每個資料型別
uint8_t C語言中的資料型別解釋
C語言中好像沒有這種資料型別,但是在實際應用的過程中,發現許多人的程式碼中都存在這種表示方式。其實uintX-t就是通過typedef定義的,利用預編譯和typedef可提高效率也方便程式碼移植。總結如下: typedef unsigned char uint8_t
解析c語言中可變引數列表
c語言中的可變引數列是一個比較有意思的實現,通過將函式實現為可變引數的形式,可以使得函式可以接受1個以上的任意多個引數(不固定)。#include <stdio.h> #include <stdarg.h> int average(int n,.
c語言中可變引數中_INTSIZEOF(n)巨集的解釋
_INTSIZEOF(n) 定義: #define _INTSIZEOF(n) ((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) ) 1 我們知道對於IX86,sizeof(int)一定是4的整數倍,所以~(siz