large\");
b、_Pragma運算符
C99引入了在程序中定義編譯指令的另外一種方法:_Pragma運算符。格式如下:
_Pragma(\"directive\")
其中directive是要滿打滿算的編譯指令。_Pragma運算符允許編譯指令參與宏替換。
c、內部編譯指令
STDCFP_CONTRACTON\/OFF\/DEFAULT若為ON,浮點表達式被當做基於硬件方式處理的獨立單元。默認值是定義的工具。
STDCFEVN_ACCESSON\/OFF\/DEFAULT告訴編譯程序可以訪問浮點環境。默認值是定義的工具。
STDCCX_LIMITED_RANGEON\/OFF\/DEFAULT若值為ON,相當於告訴編譯程序某程序某些含有複數的公式是可靠的。默認是OFF。
d、新增的內部宏
__STDC_HOSTED__若操作係統存在,則為1
__STDC_VERSION__199991L或更高。代表C的版本
__STDC_IEC_599__若支持IEC60559浮點運算,則為1
__STDC_IEC_599_COMPLEX__若支持IEC60599複數運算,則為1
__STDC_ISO_10646__由編譯程序支持,用於說明ISO\/IEC10646標準的年和月格式:yyymmmL
9.複合賦值
C99中,複合賦值中,可以指定對象類型的數組、結構或聯合表達式。當使用複合賦值時,應在括弧內指定類型,後跟由花括號圍起來的初始化列表;若類型為數組,則不能指定數組的大小。建成的對象是未命名的。
例:double*fp=(double[]){1.1,2.2,3.3};
該語句用於建立一個指向double的指針fp,且該指針指向這個3元素數組的第一個元素。在文件域內建立的複合賦值隻在程序的整個生存期內有效。在模塊內建立的複合賦值是局部對象,在退出模塊後不再存在。
10.柔性數組結構成員
C99中,結構中的最後一個元素允許是未知大小的數組,這就叫做柔性數組成員,但結構中的柔性數組成員前麵必須至少一個其他成員。柔性數組成員允許結構中包含一個大小可變的數組。sizeof返回的這種結構大小不包括柔性數組的內存。包含柔性數組成員的結構用malloc()函數進行內存的動態分配,並且分配的內存應該大於結構的大小,以適應柔性數組的預期大小。
11.指定的初始化符
C99中,該特性對經常使用稀疏數組的程序員十分有用。指定的初始化符通常有兩種用法:用於數組,以及用於結構和聯合。用於數組的格式:[index]=vol;其中,index表示數組的下標,vol表示本數組元素的初始化值。
例如:intx[10]={[0]=10,[5]=30};其中隻有x[0]和x[5]得到了初始化.用於結構或聯合的格式如下:
member-name(成員名稱)
對結構進行指定的初始化時,允許采用簡單的方法對結構中的指定成員進行初始化。
例如:structexample{intk,m,n;}object={m=10,n=200};
其中,沒有初始化k。對結構成員進行初始化的順序沒有限製。
12.printf()和scanf()函數係列的增強
C99中printf()和scanf()函數係列引進了處理longlongint和unsignedlonglongint數據類型的特性。longlongint類型的格式修飾符是ll。在printf()和scanf()函數中,ll適用於d,i,o,u和x格式說明符。另外,C99還引進了hh修飾符。當使用d,i,o,u和x格式說明符時,hh用於指定char型變元。ll和hh修飾符均可以用於n說明符。
格式修飾符a和A用在printf()函數中時,結果將會輸出十六進製的浮點數。格式如下:[-]0xh,hhhhp+d使用A格式修飾符時,x和p必須是大寫。A和a格式修飾符也可以用在scanf()函數中,用於讀取浮點數。調用printf()函數時,允許在%f說明符前加上l修飾符,即%lf,但不起作用。
13.C99新增的庫
C89中標準的頭文件
定義宏assert()
字符處理
錯誤報告
定義與實現相關的浮點值勤
定義與實現相關的各種極限值
支持函數setlocale()
數學函數庫使用的各種定義
支持非局部跳轉
定義信號值
支持可變長度的變元列表
定義常用常數
支持文件輸入和輸出
其他各種聲明
支持串函數
數函間時統係持支
庫和件文頭的增新99C
法算數複持支
問訪的麵方他其的境環點浮和記標態狀點浮對出給
數函的數整度寬大最理處持支也。合集型類型整的植移可、的準標義定
宏的符算運種各應對義定於用,進引時訂修次一第年5991此在先首
節章說小的新最現呈 ᴡᴛ.ᴘᴏᴏ
++C於容兼便以,loob宏義定。型類型類據數爾布持支
中在含包件文該。合集型類型整的植移可、的準標義定
宏點浮的型類般一義定
數函節字寬和節字多持支於用,進引時訂修次一第年5991在先首
數函類分節字寬和節字多持支於用,進引時訂修次一第年5991在先首
符識標義定預__cnuf__.41
。值賦串符字於似類,名數函的放存所__cnuf__出指於用
動改的性特它其.51
製限換轉的寬放
準標99C準標98C製限
72151數層套嵌的塊據數
368數層套嵌的句語件條
3613數個符字效有的中符識標部內
136數個符字效有的中符識標部外
3201721數個員成的中合聯或構結
數函