C語言的基礎表達

2021-06-27 13:29:36 字數 2401 閱讀 8319

發現記憶力越來越差,所以乾脆搞這麼乙個東西,就是把c語言的最常用的語法彙編在一起,不斷完善。這樣以後只要經常把這個回顧一下就可以了。不然去翻書太多了。。。

裝載這邊文章的,學習一下 c語言的基礎表達

#include "stdafx.h"

#include #include using namespace std;

#define pi 3.1415926

#define limit 20

#define area 1000

struct employee_data

;//乙個負數右移31位後會變成 0xffffffff,乙個正數右移31位則為 0x00000000

//0xffffffff ^ a + a = - 1

//因為 1011 ^ 1111 = 0100 異或1111其實是把a的0和1進行了顛倒。

int abs(int x)

int getdata(struct employee_data e)

int getdata_add(struct employee_data *e)

int main(void)

printf("%d\n",sum);

int sz = ;

sz[1] = 2;

printf("%d,%d\n",sz[1],sz[0]);

//求陣列長度

int count =sizeof(sz)/sizeof(int);

printf("%d\n",count);

typedef int myint;

myint i1 = 9;

printf("%d\n",i1);

printf("%d\n",sizeof(i1)); //輸出4 int是4位

//指標和陣列關係

int sz1[4] = ;

int *p;

p = sz1;

printf("*p %d\n",*p); //40

printf("*p+1 %d\n",*p+1); //41 這裡是在變數的基礎上+1的

printf("*p+2 %d\n",*p+2); //42

printf("*p %d\n",*p); //40

printf("*(p+1) %d\n",*(p+1)); //82 這裡是在記憶體位址的基礎上+1的

printf("*(p+2) %d\n",*(p+2)); //67

struct cardc1,c2;

c1.pips = 3;

c1.suit = '5';

c2 = c1;

printf("struct c2.pips: %d\n",c2.pips); //輸出3,結構是可以互相賦值的

typedef structcomplex;

complex as,ac[2];

ac[0].re = 1;

ac[1].re = 2;

printf("struct ac[0].re: %d\n",ac[0].re);

printf("struct ac[1].re: %d\n",ac[1].re);

printf("struct ac[0].re: %d\n",ac[0].re);

struct student;

struct student tmp;

tmp.last_name = "canada";

tmp.grade = 'a';

tmp.student_id = 122;

tmp.a = 0;

printf("struct tmp.last_name: %s\n",tmp.last_name);

struct employee_data e1;

e1.a=12;

int e11=getdata(e1);

printf("struct e11: %d\n",e11);

int e12=getdata_add(&e1); //取這個函式,然後要傳入乙個*e,實際上忽略了*,直接傳入&e1,這是方法

printf("struct e12: %d\n",e12);

//與或非

int y1 = 1;

int y2 = 3;

int y3 = y1&y2;

printf("y3 &:%d\n",y3);

printf("-9 >> 31:%d\n",abs(-5)); //絕對值

#undef __fd_setsize

#define __fd_setsize 1024

printf("#define: %d\n",__fd_setsize);

system("pause");

return 0;

}

c 基礎 表示式樹

在linq to objects中,擴充套件方法需要將乙個委託型別作為引數,這樣就可以將lambda表示式賦予引數。lambda表示式也可以賦予expression型別的引數。c 編譯器根據型別給lambda表示式定義不同的行為。如果型別是expression,編譯器就從lambda表示式中建立乙個...

4 C 基礎 表示式

運算型別轉換型別提公升 過載運算子 左值和右值 等號兩邊的物件 優先順序和結合律 運算子的優先順序和運算順序 左結合律 對於未制定求值順序的表示式,求值的時候產生的行為是未定義的。cout i i 4種明確了運算物件求值順序的運算子 運算物件的求值順序和優先順序與結合律無關。c f g h j 優先...

C 基礎表示式和運算子

1.什麼是表示式?表示式是由運算子和運算元組組成的。運算子設定對運算元進行什麼樣的運算。在c 中,如果表示式最終的計算結果為所需的型別值,表示式就可以出現在需要自或物件的任意位置。在c 中,如果表示式最終的計算結果為所需的型別值,表示式就可以出現在需要自或物件的任意位置。2.什麼是算術運算子?算術運...