C語言學習筆記04

2021-10-19 05:25:42 字數 2348 閱讀 5441

#define _crt_secure_no_warnings 1

#include

#include

intmax

(int a,

int b)

//函式前寫void是說不需要返回值,就不用加return語句,所以不需要返回值的函式可以這麼寫

#define max 100

//巨集定義變數,所有的max都代表100

#define max(x,y) (x>y?x:y)

//巨集定義的函式寫法

void

test()

//函式前寫void是說不需要返回值,就不用加return語句,所以不需要返回值的函式可以這麼寫

intmain()

;//字串寫成陣列形式要自己加乙個'\0',否則字串長度為隨機值

char arr_2=

;char arr_3=

"abc"

;//寫成""內的字串形式,系統自動在最後加'\0'

printf

("%d\n"

,strlen

(arr_1));

printf

("%d\n"

,strlen

(arr_2));

printf

("%d\n\n"

,strlen

(arr_3));

int num_1 =0;

int num_2 =0;

scanf_s

("%d,%d"

,&num_1,

&num_2)

;//輸入時必須按照scanf""中的格式,有空格也要打空格,有逗號也要打逗號,什麼都沒有的兩個輸入間預設打空格

printf

("%d\n"

,max

(num_1, num_2));

//這裡是將輸入的值放入&num_1這個位址中,而不是將這個位址賦值

printf

("%d\n\n"

,max

(num_1, num_2));

//呼叫巨集定義,相當於(num_1>num_2?num_1:num_2)

int a =0;

int b =

~a;//b是有符號的整型

//按(2進製)位取反

//正數原碼、反碼、補碼都一樣;

//負數的原碼符號位不變,其他位取反》反碼加一》補碼

//整數在記憶體中儲存的時候,儲存的是二進位制的補碼

printf

("%d\n\n"

,b);

//列印的是這個數的原碼

int c =10;

int d = c++

;//後置++,先使用c的值,在對c++

int e =20;

int f =

++e;

//前置++,先++,後使用e的值

printf

("c = %d d = %d e = %d f = %d\n\n"

, c, d,e,f)

;//11 10 21 21

int g =

(int

)3.14

;//強制型別轉換 double >>> int

int h =3;

printf

("a&&b = %d b&&h = %d\n\n"

, a && b, b && h)

;//真 - 非0,負數也是非0 假 - 0

//&& - 邏輯與,輸出整個表示式的真假值

int a1 =10;

int b1 =20;

int max =0;

max =

(a1 > b1 ? a1:b1)

;//(表示式1 ? 表示式2 : 表示式3);表示式1的結果為真,表示式2執行a1賦值給max,否則表示式3執行

//條件操作符,三目操作符

register

int k =

100;

//建議把k放入暫存器,但是要不要放入由編譯軟體決定

typedef

unsigned

int uint;

//typedef - 型別定義 - 型別重定義

uint q =20;

int i =0;

while

(i <5)

//static修飾乙個區域性變數時,其生命週期變長

//static修飾乙個全域性變數時,改變其作用域,使其只能在自己的原始檔內使用

//static修飾乙個函式時,改變了函式的鏈結屬性,使其失去外部鏈結屬性,變成內部鏈結屬性

return0;

}

C語言學習筆記04

結構體中的指標用法 p a,其中p是指向乙個結構體的指標,a是這個結構體型別的乙個成員。表示式p a引用了指標p指向的結構體的成員a。1 棧區 stack 由編譯器自動分配釋放 存放函式的引數值,區域性變數的值等。其操作方式類似於資料結構中的棧。2 堆區 heap 一般由程式設計師分配釋放,若程式設...

Go 語言學習筆記(Day 04)

假定 a 值為 10,b 值為 20。3.1.1 算數運算子 運算子描述例項 相加a b 輸出結果 30 相減 a b 輸出結果 10 相乘 a b 輸出結果 200 相除 b a 輸出結果 2 求餘 b a 輸出結果 0 自增 a 輸出結果 11 自減 a 輸出結果 9 3.1.2 關係運算子 運...

C語言學習筆記

include include void swap int p1,int p2 void swapa int arr,int n void printfa int arr,int n int main int argc,char argv swap i,j printfa array,6 swapa...