a) 指針變量

Int *p1,*p2;

Ing *pn;

Pn=&n;

b) 指針運算

Int a[5]={1,2,3,4,5};

Int *p1 = &a[1];

這樣指針p1就指向數組a的第二個元素,江蘇會計證考試報名,2022年會計從業資格考試報名,2022年江蘇會計從業證報名,2022年江蘇會計從業考試報名,江蘇2022年會計從業資格考試成報名,2022年江蘇會計從業考試,會計電算化考試試題,2022年江蘇會計電算化,江蘇會計電算化試題,江蘇會計電算化考試,江蘇初級會計電算化,江蘇初級會計電算化考試">

免费看欧美黑人毛片-免费看毛片网站-免费看毛片的网站-免费看久久-中文字幕日韩欧美-中文字幕日韩精品一区

您現在的位置:首頁 > IT認證 > Linux認證 >

Linux下C編程


Linux下C編程 

一。Linux簡介 三。指針、函數及自定義數據類型

a) 指針變量

Int *p1,*p2;

Ing *pn;

Pn=&n;

b) 指針運算

Int a[5]={1,2,3,4,5};

Int *p1 = &a[1];

這樣指針p1就指向數組a的第二個元素

c) 指針類型轉換

首先定義指針變量,然后強制轉換

Char *pc;

Int *pi;

Pi=(int *)pc;

d) 指向指針的指針

Int **pp;

e) 函數聲明

Int max(int,int);

Int max(int x,int y)

{

Int t;

T=(x>y)?x:y;

Return t;

}

f) 局部變量

Int func()

{

Int I;

}

全局變量

Int x;

Int main()

{

}

g) 變量的靜態存儲和動態存儲

全局變量即是靜態變量,定義時就分配存儲單元一直到程序結束

函數的形式參數即是動態變量,使用時才分配存儲單元。

自動變量auto、外部變量extern、靜態變量static、寄存器變量register

默認都是自動變量

Auto int I; auto可以省略

外部變量即已用其他源文件中的變量

靜態全局變量表示不能被其他源文件使用,與extern相反。

靜態局部變量定義在函數內,但在函數結束后會繼續駐留內存,并影響函數的下次調用。

寄存器變量是放在cpu寄存器內,只有自動局部變量可以定義為寄存器變量。

h) 外部函數 可以被其他源文件調用

Extern int add()

{

}

內部函數只能被本文件的函數調用

Static int add()

{

}

i) 函數指針

Void (*p)(int x)

j) 結構體

Struct name

{

Int id;

}

定義結構體

Struct student a;

直接定義結構體變量

Struct

{

Int id;

} a;

結構體初始化

Struct student a = {

23,

};

結構體指針

Struct student *p;

結構體引用

a. id

a->id

(*p)。id

p->id

嵌套結構體

Student.address.zipcode=200000

    a)shell變量

    $0 腳本名稱

    $# 命令行參數個數

    $* 所有命令行參數

    $[1-n] 第1-n個參數

    $$ 當前參數的標示符

    $! 后臺運行的最后一個進程標示符

    $? 命令退出狀態

    二。C語言基礎

    a)      開發流程

    編輯源文件->編譯源文件->連接目標文件和庫文件->運行

    b)      數據類型

    有字符型char、整形 int、浮點型 float、雙精度浮點型 double、空值 void

    獲取數據類型的字節數 sizeof

    c)      運算符

    加+、減-、乘*、除/、取余%、自增++、自減--

    ++x 等于 x=x+1;

    ++x先執行加一,再引用數值,x++先引用數值,再加一

    d)      關系運算符和邏輯運算符

    < > == >= <= !=

    &&|| !

    e)      位運算符

    與& 或| 異或^ 取反~ 左移《 右移》

    f)       表達式

    If()

    {

    Statement;

    }

    Else if()

    {

    Statement;

    }

    Else

    {

    Statement;

    }

    Switch()

    {

    Case 常量1:

    Statement;

    Brea;

    Case 常量2:

    Statement;

    Break;

    Default:

    Statement;

    }

    For(表達式1;表達式2;表達式3)

    {

    Statmennt;

    }

    While(表達式)

    {

    Statement;

    }

    Do

    {

    Statement;

    }

    While(表達式)

    g)      跳轉語句

    Break 1)switch中中止某個case 2)循環結束

    Continue 結束本次循環

    h)      數組

    Int array[5]={1,2,3,4,5};

    Int b[2][3]={{1,2,3},{4,5,6}};

    i)        字符組

    Char str[5]={‘h’,’e’,’l’,’l’,’o’};

    j)        宏定義

    #define PI 3.1415926

    #define MAX(a,b) (a>b)?a:b

    宏名和形式參數之間不能加參數

    k)      文件包含

    #include <文件>

    在系統目錄中找,調用系統庫文件

    #include “文件名”

    在當前目錄中招,再找到系統目錄中招,用戶自己的庫文件

    l)        條件編譯

    #if

    #else

    #endif

    #ifdef

    #else

    #endif

k) 共同體

Union name

{

}

共同體和結構體區別:共同體存儲是采用覆蓋技術,不同數據類型成員占用同一段內存空間。某一時間點,共同體只能存儲某一成員信息。

l) 枚舉

Enum week

{

SUNDAY,MONDAY,TUESDAY

}

枚舉定義

Enum week w;

枚舉引用

A=Tuesday

Print的話,出來時2

四。數據結構

a) 線性表

b) 棧

只允許在一段插入和刪除數據的線性表

c) 隊列

先進先出的線性表,允許在一段插入,另一端刪除

d) 二叉樹

e) 查找算法

f) 排序算法

五。文本編輯器

a) 光標移到{,然后輸入%,會跳轉到匹配的}

b) 自動補全

Pr

Ctrl+p或者ctrl+n

c) 自動縮進

:set cindent shiftwidth=4;

手動縮進

在某行打==

=G所在行到文件底部自動縮進

六。GCC編譯器

a) Gcc基本選項

-E 預處理后及停止

-S 編譯后停止

-c 編譯或匯編源文件

-o file 制定輸出文件

b) 警告選項

-Wall 啟用所有警告信息

-Werror 發生警告時取消編譯操作

-w 禁用所有警告信息

c) 優化選項

-O0 不優化

-O或-O1 基本優化

-O2 除了-O1外,還額外調整

-O3 除-O2外,還處理器優化

-Os 生成最小執行文件,用于嵌入式領域

d) 頭文件包含變量和函數聲明,不包含定義函數的實現

函數具體是現在庫文件中,分為靜態庫和動態庫。

靜態庫編譯連接時將源代碼加入到可執行文件中,后綴一般為。a

動態庫程序執行時有鏈接文件加載,一般為。so

七。調試工具
a) 啟動gdc

$gdb

退出

Quit

b) 載入程序

$gdc example

(gdb) file example

列出源代碼

(gdb) list

執行程序

(gdb) r

斷點處繼續運行程序

(gdb) c

幫助

(gdb) help

在第九行設置斷點

(gdb) b 9

查看斷點

(gdb) info break

刪除斷點

(gdb) d 1

刪除制定行上的斷點

(gdb) clear 9

禁用和恢復斷點

(gdb) disable 1

(gdb) enable 1

查看變量

(gdb) p sume

自動到斷點處顯示變量

(gdb) display sum

顯示變量數據類型

(gdb) whatis x

修改變量值

(gdb) set sum = 100

單步執行程序 step

(gdb) s

繼續 next

(gdb) n

退出 return finish

直接退出

(gdb) return

退出前執行完程序

(gdb) finish

執行到某行

(gdb) until

跳轉某行

(gdb) j 15

強制調用函數

(gdb) call printf(“”)

查看堆棧信息

backtrace

(gdb) bt

Frame

(gdb) f 1

查看當前棧信息

(gdb) info frame

查看源程序信息

(gdb) info source

查看寄存器

(gdb) info registers

查看匯編代碼

(gdb) disassemble printinfo

八。多文件項目管理Make,makefile,automake

九。Linux C基本應用

相關文章

無相關信息
更新時間2022-03-13 11:11:02【至頂部↑】
聯系我們 | 郵件: | 客服熱線電話:4008816886(QQ同號) | 

付款方式留言簿投訴中心網站糾錯二維碼手機版

客服電話:




主站蜘蛛池模板: 电影《重生》| 秦皇岛电视台| 日本电视剧《阿信》| 香蜜沉沉烬如霜电视剧演员表| 牛油果营养价值| 春江花月夜理解性默写及答案| 王渝萱的电影| 少女灵异日记| 郭碧婷是哪里人| 老字号传奇 电视剧| 女神学生| 丛林之王| 动漫头像男| 头文字d里演员表| 火花 电影| 生化危机启示录2| 奥真奈美| 欧美1069巨大办公室| 张艺馨个人资料| 喜羊羊简谱| 电影你不要走| 巨乳欧美| 我会读心术免费观看完整版| 吉川爱美番号| 全球高考图片| 血色恶魔| 外出韩版| 一年级下册语文期末测试卷可打印 | 洛兵| 秦皇岛电视台| 不跟陌生人走教案| av电影网| 空姐一级毛片| 狗年电影| 屁屁视频| 恶魔天使| 假面骑士电王| 张柏芝演的电视剧| 麦子叔| 青山知可子冲绳草莽英雄1969| 色戒在线收看|