程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 一 C語言程序的基本框架、gcc編譯器簡述、C的注釋、變量、輸入輸出

一 C語言程序的基本框架、gcc編譯器簡述、C的注釋、變量、輸入輸出

編輯:關於C語言

  1. 計算機語言分類

    1> 機器語言機器指令)

    2> 匯編語言

    3> 高級語言Basic、C語言、Java、C++、C#/.net、OC、VB、PHP等)

  2. C語系和C語言關系、強類型語言

    C語系--由C語言演變而來的語言;比如C++、Java等。

    C語言--主要用於底層開發,因此C語言也被稱為 中級語言

    強類型語言--就是變量在使用之前必須顯式聲明類型,聲明類型只需要聲明一次即可;使用時不能帶類型。

  3. 編寫C語言程序步驟在GNU/Linux下):

    1> 用Vi/Vim編輯器編輯xx.c

    2> 保存退出後,使用gcc xx.c進行編譯鏈接。

    3> 使用./a.out運行如果在PATH環境變量中配置了.  就可直接使用a.out)

  4. C程序結構

    #include <stdio.h>
    //第一個C語言程序,並測試包含文件
    int main()
    {
        #include "s.c"
        printf("hello c\n");
        return 0;
    }

    在xx.c中,一般由三部分組成

    1> #開頭的叫做指令,常見的有 #include  #define  #if 等。

      #include 作用是包含一個文件,一般會包含 /usr/include/下的頭文件(.h)。

    2> int main(){}叫函數,main是主函數,程序的入口點;函數 由 返回類型、函數名、參數列表(多個參數用,隔開) 組成;{}叫函數體。

    3> 函數{}中的內容叫 語句,語句 以 ; 結束。

  5. C程序原理

    1> 編寫源程序xx.c)

    2> 預處理 所有指令。

    3> 編譯程序,生成 .o/.obj文件。

    4> 鏈接程序,把庫函數等外部資源和 .o文件進行鏈接,生成a.out文件。

    5> 加載a.out文件從硬盤到內存;運行a.out程序。

    其中2、3、4步驟都是依賴gcc編譯器,gcc可以直接當命令使用:

  6. gcc常用選項

    -c 只編譯compile/compiling)不鏈接

    -o 目標文件名   修改目標object)文件名為指定名字默認為a.out)

    -std=c89/c99    設置c89/c99標准默認是c89標准編譯鏈接)

    -Wall  顯示所有的警告All Wall)信息警告不影響程序的編譯和運行)

    -E     僅做預處理Pre-Processing)

    -S     生成匯編(Assembly)文件

    ……

  7. #include "xx" #include <xx> 的區別:

    ""是先在當前目錄.)找,再去系統目錄, <>只去系統目錄(/uer/include/)找。#include 前不能有非空白字符。

  8. C語言的注釋

    注釋是程序員之間溝通的方式,注釋不參與程序的編譯、鏈接和運行。

    1> 單行注釋    //開始到本行結束

    2> 多行注釋    /*開始 */結束  中間可以有任意多個字符和任意多行

    注意:多行注釋不能嵌套。

  9. C語言編碼規范:

    1> 語句可以分開放在多行

    2> 空格能更好的區分代碼

    3> 縮進能更好的區分層次關系,一般縮進2-4個空格

    4> 空行能更好的區分代碼模塊

    5> 變量、函數的名字要有實際意義,采用駝峰命名法或下劃線命名法區分多個單詞。

  10. 變量

    1> 變量

    其實就是 內存的一個區域,變量名 對應 內存區域。變量在使用之前必須要 聲明類型,類型 就是變量的種類,可以確定變量占用內存區域的大小。

    2> 類型

    主要包括:char字符/int整型/float單精度浮點/double雙精度浮點/結構/聯合/枚舉/指針。

    3> 變量的聲明

    就是定義一個變量和變量的類型,格式如下:

    類型 變量名 [=初始值];

    int a;    int a = 10;    int a, b = 5, c;

    變量的第一次賦值叫初始化;變量不進行初始化,其值 不確定。

    #include <stdio.h>
    //簡單測試變量的使用
    int main()
    {
        int a = 10,b;
        float f1 = 1.0f;
        a = 20;
        printf("a=%d\n",a);//%d代表整型變量
        printf("f1=%f\n",f1);//%f float變量
        printf("b=%d\n",b);//b的值不確定
        return 0;
    }


  11. 標識符

    給變量、函數、宏等實體 命名的叫標識符,准則:

    1> 標識符必須字母、數字、下劃線組成,其中 數字不能是第一個

    2> 區分大小寫

    3> 長度無限制,但編譯器在編譯時會 截斷。

    4> 不能和 C語言的關鍵字發生沖突。

    關鍵字其實 就是 C語言自身已經 使用的特殊單詞,有特殊含義,不能被程序員做 標識符。常見的:int char float double return if else switch case default for while do break continue goto……

  12. 標准輸入函數和標准輸出函數

    1.標准輸入:printf()

    printf() 可以打印 0-n個變量(參數數量可變)

    printf(格式字符串,變量或者表達式1,2,3,4,...)

    格式字符串可以由 兩部分組成:普通字符串轉換格式(%d)

    轉換格式:

    % - 0 m.n l/h  格式字符

    % 轉換格式開始字符

      -     左對齊 省略就是右對齊(了解)

      0     空位補0 ,省略 空位不補(了解)

      m.n   m 域寬 (寬度) n 精度 浮點數 小數點後面的位數(了解)

      l/h   l 整數 long  lf 代表 double

            h 整數 short (少使用)

    格式字符:

       i/d 十進制的整數

       c   字符

       s   字符串

       f   浮點(float,如果double需要加l)

       g   浮點去掉後面的0)

       p   地址

       x   十六進制整數

       o   八進制整數

       u   無符號整數

    2> scanf()

    scanf可以從鍵盤輸入0-n個值,存到對應的變量中。

    scanf(格式字符串,變量的內存地址列表) 0-n個變量都可以

    int i; &i 取變量i的內存地址

    scanf("%d",&i); //把鍵盤輸入的一個整數存在i

    scanf 中的格式字符串與printf 基本一致。

    scanf 從前向後 逐一 驗證輸入,到不符合格式就返回,並把前面符合格式的存入變量。

    #include <stdio.h>
    //輸入輸出測試
    int main()
    {
        int i;
        printf("請輸入一個整數\n");
        scanf("%d",&i);
        printf("i=%d\n",i);
        return 0;
    }

    3> 常用類型的表示:

     整型變量: %d

     字符型變量:%c

     浮點double變量:%lf

     字符串變量:%s

     指針變量: %p

    如果類型表示不正確的話,顯示結果 可能 錯誤。

    如果在 格式字符串中有%的話,需要用 %%表示。



本文出自 “雪狼” 博客,請務必保留此出處http://wolfzhxp.blog.51cto.com/2409990/1284793

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved