c瑣碎知識點

來源:互聯網
上載者:User

標籤:computer   十六進位   include   編譯器   知識點   

1.singned char 

signed char / char / unsigned char  區別 ,主要在於char,char預設為是signed還是unsigned 與具體的編譯器有關 ,vc6.0預設為signed。

2、可以在include 檔案裡面的 float.h 中查看 各種有關float的宏定義

3、八進位 0123  、十六進位 0x123

4、enum computer{

    lianXiang;

    daiEr;

    hongJi;

};

用enum來定義 常量的取值範圍 ,這樣computer的取值就只能是 lianXiang daiEr hongJi 裡面的了 ,而lianXiang如果不初始化  ,預設初始化為0,後面依次增加1;若從daiEr開始初始化 ,則daiEr後面的依次在 daiEr的初值的基礎上加1.

5、在c中 ,字串常量用“”來定義。

6、 int * a=NULL;

    printf("%p\n",a); 

    %p是以地址的格式輸出

7、char a[4]={‘A‘,‘B‘};//若是a[4] 中一個元素都不初始化,則數組內元素為亂碼。只要有一個                            //初 始 化 則其它未被初始化的都是0

    printf("%p\n",a);

    printf("%p\n",&a);其中 a指的是數組a的首元素的地址,&a是數組a[]的地址 ,兩個在數值上相等,但是意義不同

    如: printf("%p\n",a+1);

         printf("%p\n",&a+1);  輸出的地址後移 4個位元組 因為a中含有4個元素。

8、

    #define PCHAR char*

    typedef char* pchar;//注意分號


    PCHAR PX1,PX2;

    pchar px1,px2;

    char ch=‘a‘;

    PX1=&ch;

    PX2=&ch;//cannot convert from ‘char *‘ to ‘char‘ 

    px1=&ch;   

    px2=&ch;

         此時px1和px2都是字元指標,因為typedef是給一個類型起了另一個名字(這裡是將char* 起名為pchar ,即pchar就是 指向字元的指標 ,所以px1 和px2 都是字元型指標)


            而define 只是一個宏替換  (即將程式中 所有的 char* 替換成PCHAR ) 所以相當於是

    char* PX1,PX2(char *PX1,PX2); 所以 只有PX1是字元指標,而PX2是字元類型

9、 1)int const * pa;

    2)int *const pb;

    1)中 const 往後面看 是*pa ,是一個記憶體的表示,所以pa這個指標 指向的記憶體單元的內容不可變


10、static 修飾的東西 放到靜態區中,隨程式運行到結束,但是不一定是在整個程式中都可見 

    1)static 修飾函數,

        

    2)static 修飾變數 

            檔案級: 存放在靜態區,被修飾後 還是在靜態區

            塊級:本來是存放在 堆棧中,被static修飾後 存放在靜態區 ,生存期為程式級,可                    見 性  還是塊級

            函數參數:不可以被static修飾

11、linux 下 gcc和cc 都是編譯c語言程式用的  

              g++是用來編譯c++程式的

            2)rm-f 刪除檔案的名字

12、預先處理(標頭檔,宏定義,注釋:注釋用一個空格來代替) ----編譯---連結

13、 ??(------[

     ??<------{

     /a可以發出蜂鳴

14、volatile :不允許編譯器進行類型最佳化

15、while(1)

   {    

        break;    //可以跳出迴圈

    }

 while(1)

{

    continue;//跳不出去

}


16、書寫規範:switch 語句中 一定要寫上 default  ,即使default 語句沒有 起作用的語句

17、

本文出自 “xingNalLu” 部落格,請務必保留此出處http://781588100.blog.51cto.com/9429625/1559199

c瑣碎知識點

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.