預定義符號簡述

2021-07-23 18:40:54 字數 548 閱讀 6829

編譯乙個c程式涉及很多步驟,可概述為第一步:預處理;第二步:編譯;第三步:彙編;第四步:鏈結。其中,預處理又可分為巨集替換、標頭檔案包含、去注釋、條件編譯四個部分,該任務主要由c預處理器完成。下面,就來講述預處理器定義的符號。
預定義符號有__file__、__line__、__data__、__time__、__stdc__這五種。

__file__:表示進行編譯的檔名;

__line__:表示檔案當前的行號;

__data__:表示檔案被編譯的日期;

__time__:表示檔案被編譯的時間;

__stdc__:如果編譯器遵循ansi c,其值就為1,否則未定義。

可用如下**測試:

#include

#include

int main()

學會使用這些預定義符號,特別是__line__能有效提高我們除錯**的效率,因為它能很方便的輸出**中所標記處的行號。

預定義符號與巨集

預處理器在原始碼編譯之前進行的一些文字性質的操作,它的主要任務包括刪除注釋,插入被 include指令包含的檔案內容,定義和替換由 define指令定義的符號以及確定 的部分內容是否應該根據一些條件編譯指令進行編譯。date 字串常量型別,表示當前所在原始檔的編譯日期,輸出格式為mmm dd yyy...

程式編譯與鏈結,以及預定義符號,

1.預處理識別符號又稱預定義符號,它們的值是 字串常量 十進位制數字常量 1 file 表示進行編譯的源檔名 2 line 表示檔案當前行的行號 3 date 表示檔案被編譯的日期 4 time 表示檔案被編譯的時間 5 stdc 表示若編譯器遵循ansi c,其值為1,否則未定義 用處 line ...

C語言編譯器的預定義符號

c語言編譯器的預定義符號 line 當前 源 檔案 行號 整數 file 當前正在編譯的檔案的檔名 字串 date 當前日期,以 月月 日日 年年年年 的形式給出 字串 time 當前時間,以 hh mm ss 的格式給出 字串 stdc 如果編譯器符合ansi c標準,該巨集為1,否則為0 std...