c 之保留字

2021-09-27 03:07:27 字數 2509 閱讀 5659

一般情況下,c++關鍵字也被稱為c++保留字,但嚴格情況下應分為:關鍵字、替代標記、庫保留名稱。

總的來說,為了避免出現問題,就按照常規方法,不要打這些擦邊球就行了。

關鍵字是組成程式語言詞彙表的識別符號,它們不能用於其他用途。

下表列出了c++的關鍵字,其中粗體也是ansi c99標準中的關鍵字。

alignas

alignof

asmautobool

breakcasecatch

charchar16_t

char32_t

class

constconst_cast

constexpr

continuedecltype

defaultdelete

do

doubledynamic_cast

elseenumexplicit

export

externfalse

floatfor

friend

gotoifinlineint

longmutable

namespace

newnpexcept

nullptr

operator

private

protected

public

register

reinterpret_cast

returnshortsigned

sizeofstaticstatic_assert

static_cast

struct

switchtemplate

this

thread_local

throw

true

trytypedeftypeid

typename

unionunsignedusing

virtual

void

volatilewchar_t

while

c++還有一些運算子的字母代替表示,它們被稱為代替標記,代替標記也被保留。

標記含義

and&&

and_eq

&=bitand&or

||or_eq

|=bitor

|not

!not_eq

!=xor

^xor_eq

^=compl

~編譯器禁止使用保留給c++庫使用的名稱,如果您使用他們,後果將是不確定的。

如果程式包含某個標頭檔案,則不應將該標頭檔案中定義的巨集名用作其他目的。

比如 中的 char_bit
c++語言保留了以兩個下劃線或下劃線和大寫字母打頭的名稱,還將以單個下劃線打頭的名稱保留用作全域性變數。

比如 __gink _lynx __lynx
c++語言保留了在庫檔案中被宣告為鏈結性為外部的名稱。

比如 中的 tan 函式,其原型為: double tan(double);

則使用者不能定義:int tan(double);

c++社群討厭新增關鍵字,因為它們可能與現有**發生衝突。

c++11提供了另一種避免新增關鍵字的機制,即使用特殊含義的識別符號。

這些識別符號不是關鍵字,但可以用於語言實現。

編譯器根據上下文來判斷他們是常規識別符號還是用於實現語言功能。

int final;                                  // 常規識別符號

virtual void unfold() = final; // 實現語言功能

另外,c++還有很多經常出現在程式中,但不被保留的識別符號。

頭檔名 庫函式名 main
只要不發生命名空間衝突,就可將這些識別符號用於其他目的,但是常識告訴您不必且不應這樣做!

C語言保留字

c語言的保留字 一共有32個 auto 宣告自動變數 double 宣告雙精度變數或函式 int 宣告整型變數或函式 struct 宣告結構體變數或函式 break 跳出當前迴圈 else 條件語句否定分支 與 if 連用 long 宣告長整型變數或函式 switch 用於開關語句 case 開關語...

python保留字 python保留字有哪些

布林型別的值,表示假,與true對應 2 class 定義類的關鍵字 3 finally 異常處理使用的關鍵字,用它可以指定始終執行的 指定 在finally裡面 例如 class myexception exception pass try some code here raise myexcep...

python的保留字

保留字是python語言中一些已經被賦予特定意義的單詞,在軟體開發中,不允許使用保留字用於變數,函式,類模組以及其他物件的名稱。python保留字 and as assert break class continue def del elif else except finally for from...