本文目錄一覽:
- 1、關於C語言中內置宏__DATE__和 __TIME__?
- 2、C語言的按照標識符、關鍵字、常用編譯指令有哪些?
- 3、求C語言中的32個關鍵字及其意思?
- 4、C語言關鍵字有哪些?
- 5、C語言中的32個關鍵字分別是什麼意思
- 6、c語言的37個關鍵字都是什麼
關於C語言中內置宏__DATE__和 __TIME__?
這兩個就是字符串常量,當字符串用就行。
__DATE__:當前的編譯日期
__TIME__:當前編譯時間;
#includestdio.h
#includestring.h
int main()
{
printf(“%s,%s\n”,__DATE__,__TIME__);
printf(“長度DATE=%d,TIME=%d\n”,strlen(__DATE__),strlen(__TIME__));
return 0;
}
C語言的按照標識符、關鍵字、常用編譯指令有哪些?
我們可以在C源程序中插入傳給編譯程序的各中指令,這些指令被稱為預處理器指令,它們擴充了程序設計的環境。現把常用的預處理命令總結如下:
1. 預處理程序
按照ANSI標準的定義,預處理程序應該處理以下指令:
#if #ifdef #ifndef #else #elif
#endif
#define
#undef
#line
#error
#pragma
#include
顯然,上述所有的12個預處理指令都以符號#開始,,每條預處理指令必須獨佔一行。
2. #define
#define指令定義一個標識符和一個串(也就是字符集),在源程序中發現該標識符時,都用該串替換之。這種標識符稱為宏名字,相應的替換稱為宏代換。一般形式如下:
#define macro-name char-sequence
這種語句不用分號結尾。宏名字和串之間可以有多個空白符,但串開始後只能以新行終止。
例如:我們使用LEFT代表1,用RIGHT代表0,我們使用兩個#define指令:
#define LEFT 1
#define RIGHT 0
每當在源程序中遇到LEFT或RIGHT時,編譯程序都用1或0替換。
定義一個宏名字之後,可以在其他宏定義中使用,例如:
#define ONE 1
#define TWO ONE+ONE
#define THREE ONE+TWO
宏代換就是用相關的串替代標識符。因此,如果希望定義一條標準錯誤信息時,可以如下定義:
#define ERROR_MS “Standard error on input \n”
如果一個串長於一行,可在行尾用反斜線”\”續行,如下:
#define LONG_STRING “This is a very very long \
String that is used as an example”
3. #error
#error指令強制編譯程序停止編譯,它主要用於程序調試。#error指令的一般形式是:
#error error-message
注意,宏串error-message不用雙引號包圍。遇到#error指令時,錯誤信息被顯示,可能同時還顯示編譯程序作者預先定義的其他內容。
4. #include
程序中的#include指令要求編譯程序讀入另一個源文件。被讀入文件的名字必須用雙引號(“”)或一對尖括號()包圍,例如:
#include “stdio.h”
#include stdio.h
都使C編譯程序讀入並編譯頭文件以用於I/O系統庫函數。
包含文件中可以包含其他#include指令,稱為嵌套包含。允許的最大嵌套深度隨編譯器而變。
文件名被雙括號或尖括號包圍決定了對指定文件的搜索方式。文件名被尖括號包圍時,搜索按編譯程序作者的定義進行,一般用於搜索某些專門放置包含文件的特殊目錄。當文件名被雙括號包圍時,搜索按編譯程序實時的規定進行,一般搜索當前目錄。如未發現,再按尖括號包圍時的辦法重新搜索一次。
通常,絕大多數程序員使用尖括號包圍標準的頭文件,雙引號用於包圍與當前程序相關的文件名。
5. 條件編譯指令
若干編譯指令允許程序員有選擇的編譯程序源代碼的不同部分,這種過程稱為條件編譯。
5.1#if、#else、#elif #endif
條件編譯指令中最常用的或許是#if,#else,#elif和#endif。這些指令允許程序員根據常數表達式的結果有條件的包圍部分代碼。
#if的一般形式是:
#if constant-expression
Statement sequence
#endif
如#if後的常數表達式為真,則#if和#endif中間的代碼被編譯,否則忽略該代碼段。#endif標記#if塊的結束。
#else指令的作用與C語言的else相似,#if指令失敗時它可以作為備選指令。例如:
#include stdio.h
#define MAX 100
Int main(void)
{
#if MAX99
printf(“Compiled for array greater than 99.\n”);
#else
printf(“Complied for small array.\n”);
#endif
return 0;
}
求C語言中的32個關鍵字及其意思?
C語言中的32個關鍵字及其意思如下:
1、auto 聲明自動變量
2、short 聲明短整型變量或函數
3、int 聲明整型變量或函數
4、long 聲明長整型變量或函數
5、float 聲明浮點型變量或函數
6、double 聲明雙精度變量或函數
7、char 聲明字符型變量或函數
8、struct 聲明結構體變量或函數
9、union 聲明共用數據類型
10、enum 聲明枚舉類型
11、typedef 用以給數據類型取別名
12、const 聲明只讀變量
13、unsigned 聲明無符號類型變量或函數
14、signed 聲明有符號類型變量或函數
15、extern 聲明變量是在其他文件正聲明
16、register 聲明寄存器變量
17、static 聲明靜態變量
18、volatile 說明變量在程序執行中可被隱含地改變
19、void 聲明函數無返回值或無參數,聲明無類型指針
20、else 條件語句否定分支(與 if 連用)
21、switch 用於開關語句
22、case 開關語句分支
23、for 一種循環語句
24、do 循環語句的循環體
25、while 循環語句的循環條件
26、goto 無條件跳轉語句
27、continue 結束當前循環,開始下一輪循環
28、break 跳出當前循環
29、default 開關語句中的“其他”分支
30、sizeof 計算數據類型長度
31、return 子程序返回語句(可以帶參數,也可不帶參數)循環條件
32、if 條件語句
參考資料:百度百科—C語言
C語言關鍵字有哪些?
C語言的關鍵字共有32個,根據關鍵字的作用,可分其為數據類型關鍵字、控制語句關鍵字、存儲類型關鍵字和其它關鍵字四類。
1 數據類型關鍵字(12個):
(1) char :聲明字符型變量或函數
(2) double :聲明雙精度變量或函數
(3) enum :聲明枚舉類型
(4) float:聲明浮點型變量或函數
(5) int: 聲明整型變量或函數
(6) long :聲明長整型變量或函數
(7) short :聲明短整型變量或函數
(8) signed:聲明有符號類型變量或函數
(9) struct:聲明結構體變量或函數
(10) union:聲明共用體(聯合)數據類型
(11) unsigned:聲明無符號類型變量或函數
(12) void :聲明函數無返回值或無參數,聲明無類型指針(基本上就這三個作用)
2控制語句關鍵字(12個):
A循環語句
(1) for:一種循環語句(可意會不可言傳)
(2) do :循環語句的循環體
(3) while :循環語句的循環條件
(4) break:跳出當前循環
(5) continue:結束當前循環,開始下一輪循環
B條件語句
(1)if: 條件語句
(2)else :條件語句否定分支(與 if 連用)
(3)goto:無條件跳轉語句
C開關語句
(1)switch :用於開關語句
(2)case:開關語句分支
(3)default:開關語句中的“其他”分支
D返回語句
return :子程序返回語句(可以帶參數,也看不帶參數)
3 存儲類型關鍵字(4個)
(1)auto :聲明自動變量 一般不使用
(2)extern:聲明變量是在其他文件正聲明(也可以看做是引用變量)
(3)register:聲明積存器變量
(4)static :聲明靜態變量
4 其它關鍵字(4個):
(1)const :聲明只讀變量
(2)sizeof:計算數據類型長度
(3)typedef:用以給數據類型取別名(當然還有其他作用
(4)volatile:說明變量在程序執行中可被隱含地改變
拓展資料:
C語言是一門通用計算機編程語言,廣泛應用於底層開發。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
儘管C語言提供了許多低級處理的功能,但仍然保持着良好跨平台的特性,以一個標準規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言制定了一套完整的美國國家標準語法,稱為ANSI C,作為C語言最初的標準。 目前2011年12月8日,國際標準化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標準,也是C語言的最新標準,該標準更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。
C語言是一門面向過程的計算機編程語言,與C++,Java等面向對象的編程語言有所不同。
其編譯器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
參考資料:C語言_百度百科
C語言中的32個關鍵字分別是什麼意思
這個是32個關鍵字:
C語言,是一種通用的、過程式的編程語言,廣泛用於系統與應用軟件的開發。具有高效、靈活、功能豐富、表達力強和較高的移植性等特點,在程序員中備受青睞。最近25年是使用最為廣泛的編程語言。
C語言是由UNIX的研製者丹尼斯·里奇(Dennis Ritchie)於1970年 由 肯·湯普遜(Ken Thompson)所研製出的B語言的基礎上發展和完善起來的。目前,C語言編譯器普遍存在於各種不同的操作系統中,例如UNIX、MS-DOS、Microsoft Windows及Linux等。C語言的設計影響了許多後來的編程語言,例如C++、Objective-C、Java、C#等。
c語言的37個關鍵字都是什麼
關鍵字就是已被C語言本身使用,不能作其它用途使用的字。例如關鍵字不能用作變量名、函數名等
由ANSI標準定義的C語言關鍵字共32個:
auto double int struct break else long switch
case enum register typedef char extern return union
const float short unsigned continue for signed void
default goto sizeof volatile do if while static
根據關鍵字的作用,可以將關鍵字分為數據類型關鍵字和流程控制關鍵字兩大類。
1 數據類型關鍵字
A.基本數據類型(5個)
void :聲明函數無返回值或無參數,聲明無類型指針,顯式丟棄運算結果
char :字符型類型數據,屬於整型數據的一種
int :整型數據,通常為編譯器指定的機器字長
float :單精度浮點型數據,屬於浮點數據的一種
double :雙精度浮點型數據,屬於浮點數據的一種
B .類型修飾關鍵字(4個)
short :修飾int,短整型數據,可省略被修飾的int。
long :修飾int,長整形數據,可省略被修飾的int。
signed :修飾整型數據,有符號數據類型
unsigned :修飾整型數據,無符號數據類型
C .複雜類型關鍵字(5個)
struct :結構體聲明
union :共用體聲明
enum :枚舉聲明
typedef :聲明類型別名
sizeof :得到特定類型或特定類型變量的大小
D .存儲級別關鍵字(6個)
auto :指定為自動變量,由編譯器自動分配及釋放。通常在棧上分配
static :指定為靜態變量,分配在靜態變量區,修飾函數時,指定函數作用域為文件內部
register :指定為寄存器變量,建議編譯器將變量存儲到寄存器中使用,也可以修飾函數形參,建議編譯器通過寄存器而不是堆棧傳遞參數
extern :指定對應變量為外部變量,即標示變量或者函數的定義在別的文件中,提示編譯器遇到此變量和函數時在其他模塊中尋找其定義。
const :與volatile合稱“cv特性”,指定變量不可被當前線程/進程改變(但有可能被系統或其他線程/進程改變)
volatile :與const合稱“cv特性”,指定變量的值有可能會被系統或其他進程/線程改變,強制編譯器每次從內存中取得該變量的值
2 流程控制關鍵字
A .跳轉結構(4個)
return :用在函數體中,返回特定值(或者是void值,即不返回值)
continue :結束當前循環,開始下一輪循環
break :跳出當前循環或switch結構
goto :無條件跳轉語句
B .分支結構(5個)
if :條件語句,後面不需要放分號
else :條件語句否定分支(與if連用)
switch :開關語句(多重分支語句)
case :開關語句中的分支標記
default :開關語句中的“其他”分支,可選。
C .循環結構(3個)
for:for循環結構,for(1;2;3)4;的執行順序為1-2-4-3-2…循環,其中2為循環條件。在整個for循環過程中,表達式1隻計算一次,表達式2和表達式3則可能計算多次,也可能一次也不計算。循環體可能多次執行,也可能一次都不執行。
do :do循環結構,do 1 while(2); 的執行順序是1-2-1…循環,2為循環條件
while :while循環結構,while(1) 2; 的執行順序是1-2-1…循環,1為循環條件
以上循環語句,當循環條件表達式為真則繼續循環,為假則跳出循環。
1999年12月16日,ISO推出了C99標準,該標準新增了5個C語言關鍵字:
inline restrict _Bool _Complex _Imaginary
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/155409.html