a) 指針變量

Int *p1,*p2;

Ing *pn;

Pn=&n;

b) 指針運算

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

Int *p1 = &a[1];

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

射精一区欧美专区|国产精品66xx|亚洲视频一区导航|日韩欧美人妻精品中文|超碰婷婷xxnx|日韩无码综合激情|特级黄片一区二区|四虎日韩成人A√|久久精品内谢片|亚洲成a人无码电影

您現(xiàn)在的位置:首頁 > IT認證 > Linux認證 >

Linux下C編程


Linux下C編程 

一。Linux簡介 三。指針、函數(shù)及自定義數(shù)據(jù)類型

a) 指針變量

Int *p1,*p2;

Ing *pn;

Pn=&n;

b) 指針運算

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

Int *p1 = &a[1];

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

c) 指針類型轉換

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

Char *pc;

Int *pi;

Pi=(int *)pc;

d) 指向指針的指針

Int **pp;

e) 函數(shù)聲明

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) 變量的靜態(tài)存儲和動態(tài)存儲

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

函數(shù)的形式參數(shù)即是動態(tài)變量,使用時才分配存儲單元。

自動變量auto、外部變量extern、靜態(tài)變量static、寄存器變量register

默認都是自動變量

Auto int I; auto可以省略

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

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

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

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

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

Extern int add()

{

}

內部函數(shù)只能被本文件的函數(shù)調用

Static int add()

{

}

i) 函數(shù)指針

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 腳本名稱

    $# 命令行參數(shù)個數(shù)

    $* 所有命令行參數(shù)

    $[1-n] 第1-n個參數(shù)

    $$ 當前參數(shù)的標示符

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

    $? 命令退出狀態(tài)

    二。C語言基礎

    a)      開發(fā)流程

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

    b)      數(shù)據(jù)類型

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

    獲取數(shù)據(jù)類型的字節(jié)數(shù) sizeof

    c)      運算符

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

    ++x 等于 x=x+1;

    ++x先執(zhí)行加一,再引用數(shù)值,x++先引用數(shù)值,再加一

    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)循環(huán)結束

    Continue 結束本次循環(huán)

    h)      數(shù)組

    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

    宏名和形式參數(shù)之間不能加參數(shù)

    k)      文件包含

    #include <文件>

    在系統(tǒng)目錄中找,調用系統(tǒng)庫文件

    #include “文件名”

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

    l)        條件編譯

    #if

    #else

    #endif

    #ifdef

    #else

    #endif

k) 共同體

Union name

{

}

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

l) 枚舉

Enum week

{

SUNDAY,MONDAY,TUESDAY

}

枚舉定義

Enum week w;

枚舉引用

A=Tuesday

Print的話,出來時2

四。數(shù)據(jù)結構

a) 線性表

b) 棧

只允許在一段插入和刪除數(shù)據(jù)的線性表

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 發(fā)生警告時取消編譯操作

-w 禁用所有警告信息

c) 優(yōu)化選項

-O0 不優(yōu)化

-O或-O1 基本優(yōu)化

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

-O3 除-O2外,還處理器優(yōu)化

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

d) 頭文件包含變量和函數(shù)聲明,不包含定義函數(shù)的實現(xiàn)

函數(shù)具體是現(xiàn)在庫文件中,分為靜態(tài)庫和動態(tài)庫。

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

動態(tài)庫程序執(zhí)行時有鏈接文件加載,一般為。so

七。調試工具
a) 啟動gdc

$gdb

退出

Quit

b) 載入程序

$gdc example

(gdb) file example

列出源代碼

(gdb) list

執(zhí)行程序

(gdb) r

斷點處繼續(xù)運行程序

(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

顯示變量數(shù)據(jù)類型

(gdb) whatis x

修改變量值

(gdb) set sum = 100

單步執(zhí)行程序 step

(gdb) s

繼續(xù) next

(gdb) n

退出 return finish

直接退出

(gdb) return

退出前執(zhí)行完程序

(gdb) finish

執(zhí)行到某行

(gdb) until

跳轉某行

(gdb) j 15

強制調用函數(shù)

(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【至頂部↑】
聯(lián)系我們 | 郵件: | 客服熱線電話:4008816886(QQ同號) | 

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

客服電話: