C語言程序員編程基礎知識學習匯總

C語言是面向過程的浮声,而C++是面向?qū)ο蟮?/b>

C和C++的區(qū)別:

C是一個結構化語言虚婿,它的重點在于算法和數(shù)據(jù)結構。C程序的設計首要考慮的是如何通過一個過程泳挥,對輸入(或環(huán)境條件)進行運算處理得到輸出(或?qū)崿F(xiàn)過程(事務)控制)然痊。

C++,首要考慮的是如何構造一個對象模型屉符,讓這個模型能夠契合與之對應的問題域剧浸,這樣就可以通過獲取對象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過程(事務)控制。 所以C與C++的最大區(qū)別在于它們的用于解決問題的思想方法不一樣矗钟。之所以說C++比C更先進辛蚊,是因為“ 設計這個概念已經(jīng)被融入到C++之中 ”。

C與C++的最大區(qū)別:在于它們的用于解決問題的思想方法不一樣真仲。之所以說C++比C更先進袋马,是因為“ 設計這個概念已經(jīng)被融入到C++之中 ”,而就語言本身而言秸应,在C中更多的是算法的概念虑凛。那么是不是C就不重要了碑宴,錯!算法是程序設計的基礎桑谍,好的設計如果沒有好的算法延柠,一樣不行。而且锣披,“C加上好的設計”也能寫出非常好的東西贞间。

- Hello,C

//類似于java import 引入頭文件

int main() {

printf("Hello,C ");//輸入語句

// system("pause");//暫停 讓cmd窗口不消失

return 0;

}

" data-snippet-id="ext.5bb8d5606ae4a3f75e42babc2b126c74" data-snippet-saved="false" data-codota-status="done">#include//類似于java import 引入頭文件

int main() {

printf("Hello,C ");//輸入語句

// system("pause");//暫停 讓cmd窗口不消失

return 0;

}

小編推薦一個學C語言/C++的學習裙【 六九九,四七零雹仿,五九六 】增热,無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習胧辽!裙內(nèi)有開發(fā)工具峻仇,很多干貨和技術資料分享!

第一個沒啥好講的,include類似JAVA的import導包操作,以前學習C的之后一直寫#include< stdio.h>老師也沒說,不知道是個啥!現(xiàn)在才恍然明白原來是standard i/o的意思.默認是有一個返回值的(void也是可以的,但是C++好像就強制要求要返回值),一般return 0;作為程序的正常結束邑商。

- c的基本數(shù)據(jù)類型和變量的定義

int main(){

//基本數(shù)據(jù)類型 字符型 char| 整型 short int long | 浮點型 float double |有符號 signed |無符號 unsigned|void 空

char c = 'a';

short a = 10;

int i = 10;

long q = 10;

float x = 10;

double y = 10;

printf(" i = %d ",i);

}

" data-snippet-id="ext.ee2a10fe64308b41bbcc87f7e41ff8fb" data-snippet-saved="false" data-codota-status="done">#includeint main(){

//基本數(shù)據(jù)類型 字符型 char| 整型 short int long | 浮點型 float double |有符號 signed |無符號 unsigned|void 空

char c = 'a';

short a = 10;

int i = 10;

long q = 10;

float x = 10;

double y = 10;

printf(" i = %d ",i);

}

在C中變量需要先定義后使用,不能像java一樣,在哪里需要就直接 int i=0;在C中是行不通的.

常用數(shù)據(jù)類型長度在32 位的系統(tǒng)上

short 出來的內(nèi)存大小是2 個byte摄咆;

int 出來的內(nèi)存大小是4 個byte;

long 出來的內(nèi)存大小是4 個byte人断;

float 出來的內(nèi)存大小是4 個byte吭从;

double 出來的內(nèi)存大小是8 個byte;

char 出來的內(nèi)存大小是1 個byte恶迈。

(具體長度和平臺有關,可以用sizeof 方法測試一下)

輸出時不同輸出格式都有那些呢?

(1)d(或i)格式符影锈。用來輸出十進制整數(shù),有以下幾種用法:

??①%d蝉绷,按整型數(shù)據(jù)的實際長度輸出鸭廷。

??②%md,m為指定的輸出字段的寬度熔吗。如果數(shù)據(jù)的位數(shù)小于m辆床,

?? 則左端補以空格,若大于m桅狠,則按實際位數(shù)輸出讼载。

?? ③%ld(%mld 也可),輸出長整型數(shù)據(jù)中跌。

??例如:long a=123456;

?? printf(“%ld”,a);

(2)o格式符咨堤,以八進制數(shù)形式輸出整數(shù)。格式:%o漩符,%mo,%lo一喘,%mlo都可。

(3)x(或X)格式符,以十六進制數(shù)形式輸出整數(shù)凸克。格式:%x议蟆,%mx,%lx,%mlx都可萎战。

(4)u格式符咐容,用來輸出unsigned型數(shù)據(jù),即無符號數(shù)蚂维,以十進制數(shù)形式輸出戳粒。

格式:%u,%mu,%lu都可虫啥。

(5)c格式符蔚约,用來輸出一個字符。格式:%c孝鹊,%mc都可。

(6)s格式符展蒂,用來輸出一個字符串又活。格式:%s,%ms,%-ms锰悼,%m.ns柳骄,%-m.ns都可。

(7)f格式符箕般,用來輸出實數(shù)(包括單耐薯、雙精度),以小數(shù)形式輸出丝里。格式:%f曲初,%m.nf,%-m.nf都可杯聚。

注意:單精度實數(shù)的有效位數(shù)一般為7位臼婆,雙精度為16位。

(8)e(或E)格式符幌绍,以指數(shù)形式輸出實數(shù)颁褂。格式:%e,%m.ne傀广,%-m.ne都可颁独。

(9)g(或G)格式符,用來輸出實數(shù)伪冰,它根據(jù)數(shù)值的大小誓酒,自動選f格式或e格式(選擇輸出時占寬度較小的一種)。

- 循環(huán)語句for

int main() {

//c99標準

int i;

for(i = 0; i<100; i++) {

printf(" i = %d ",i);

}

system("pause");//暫停 讓cmd窗口不消失

}" data-snippet-id="ext.29dffee7d9765d50adbdad7086c1deff" data-snippet-saved="false" data-codota-status="done">#includeint main() {

//c99標準

int i;

for(i = 0; i<100; i++) {

printf(" i = %d ",i);

}

system("pause");//暫停 讓cmd窗口不消失

}

這個java的區(qū)別就在于,java可以在任何需要的地方直接創(chuàng)建個變量,for一般寫成

for(int i = 0; i<100; i++) {

}

C則需要先聲明變量.下面是常見的語句

- 指針變量

int main() {

int* p;//定義一個int*類型的指針變量 p

int i = 10;//定義一個int類型的變量 i i就有一個內(nèi)存地址值

//指針賦值 &就是取內(nèi)存地址,將i的地址賦值給p

p = &i;

printf("i = %d ",i);//直接獲取i的值 *:獲取指針變量指向的值

printf("通過指針對象去獲取 i = %d ",*p);

printf("指針變量p = %d ",p);

//重點: 特殊: * &

//1 怎么定義指針變量 類型* 變量名;

//2 怎么賦值 p = &i;

//3 怎么拿值 int i = *p;

system("pause");//暫停 讓cmd窗口不消失

}" data-snippet-id="ext.40001aaa81076738ded619164af5d58b" data-snippet-saved="false" data-codota-status="done">#includeint main() {

int* p;//定義一個int*類型的指針變量 p

int i = 10;//定義一個int類型的變量 i i就有一個內(nèi)存地址值

//指針賦值 &就是取內(nèi)存地址,將i的地址賦值給p

p = &i;

printf("i = %d ",i);//直接獲取i的值 *:獲取指針變量指向的值

printf("通過指針對象去獲取 i = %d ",*p);

printf("指針變量p = %d ",p);

//重點: 特殊: * &

//1 怎么定義指針變量 類型* 變量名;

//2 怎么賦值 p = &i;

//3 怎么拿值 int i = *p;

system("pause");//暫停 讓cmd窗口不消失

}

指針原理圖:

Note:需要注意的是,指針*p在左與在右的區(qū)別:

int i = 0;

int *p = &i;

int j = *p; // *p出現(xiàn)在右邊,表示p指向的int型變量的值

*p = 2; // *p出現(xiàn)在左邊,表示p指向int型變量的內(nèi)存空間

- 多級指針

//類似于java import 引入頭文件

int main() {

//typedef int** pi;//聲明新的數(shù)據(jù)類型,代替了int** 數(shù)據(jù)類型,類似取別名

//定義多級指針

int i = 10;

int* p = &i;

int** q = &p;

int*** r = &q;

//通過r獲取i的值

printf("i = %d ",***r);

//通過q獲取i的值

printf("i = %d ",**q);

//通過p獲取i的值

printf("i = %d ",*p);

//規(guī)律:看前面的*號 數(shù)量 贮聂,取值的時候丰捷,有多少個*坯墨,取值的時候就用多少個*號

system("pause");//暫停 讓cmd窗口不消失

}" data-snippet-id="ext.c5a6bac3333814ce10e96ddad84384c2" data-snippet-saved="false" data-codota-status="done">#include//類似于java import 引入頭文件

int main() {

//typedef int** pi;//聲明新的數(shù)據(jù)類型,代替了int** 數(shù)據(jù)類型,類似取別名

//定義多級指針

int i = 10;

int* p = &i;

int** q = &p;

int*** r = &q;

//通過r獲取i的值

printf("i = %d ",***r);

//通過q獲取i的值

printf("i = %d ",**q);

//通過p獲取i的值

printf("i = %d ",*p);

//規(guī)律:看前面的*號 數(shù)量 ,取值的時候病往,有多少個*捣染,取值的時候就用多少個*號

system("pause");//暫停 讓cmd窗口不消失

}

多級指針在使用的時候并沒有和一級指針有太多的區(qū)別,其實就是二級指針就是指向一級指針地址的指針,三級指針就是指向二級指針地址的指針,類推

- 數(shù)組

數(shù)組簡單來說就是存放指定數(shù)據(jù)類型的一種數(shù)據(jù)結構.

他是一種指針類型的變量.直接使用指針變量arr,默認是指向數(shù)組的首地址

下面是一個int型的數(shù)組的賦值與取值操作:

//類似于java import 引入頭文件

int main() {

//定義數(shù)組

int arr[10];

int i;

//循環(huán)賦值

for(i = 0; i<10; i++) {

arr[i] = i;

}

//循環(huán)輸出 倒著輸出

for(i=9; i>=0; i--) {

printf("arr[%d] = %d ",i,arr[i]);

}

system("pause");//暫停 讓cmd窗口不消失

}" data-snippet-id="ext.12e8ab2bd279bd8cc10170c9ee323773" data-snippet-saved="false" data-codota-status="done">#include//類似于java import 引入頭文件

int main() {

//定義數(shù)組

int arr[10];

int i;

//循環(huán)賦值

for(i = 0; i<10; i++) {

arr[i] = i;

}

//循環(huán)輸出 倒著輸出

for(i=9; i>=0; i--) {

printf("arr[%d] = %d ",i,arr[i]);

}

system("pause");//暫停 讓cmd窗口不消失

}

小編推薦一個學C語言/C++的學習裙【 六九九,四七零停巷,五九六 】耍攘,無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習畔勤!裙內(nèi)有開發(fā)工具蕾各,很多干貨和技術資料分享!

因為數(shù)組是一個指針類型的變量,默認指向首地址,我們可以通過指針變量指向地址的偏移來取數(shù)組指定位置的值,需要注意的是不同數(shù)據(jù)類型的偏移量,如:<喎?"/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwcmUgY2xhc3M9"brush:java;"> int arr[] = {1,5,8}; int i; for(i = 0; i<3; i++) { printf("arr[%d] = %d ",i,*(arr+i));//指針變量偏移再取值 }

- 結構體

學了java回頭看C語言的結構體(或者說是結構),就感覺特別親切,因為他和類特別像,大概結構體的設計就有面向?qū)ο缶幊痰乃枷朐诶锩?/p>

//定義結構體

struct person {

int age;

};

int main() {

struct person p;//定義一個結構變量

//給結構體里面的屬性賦值

p.age = 18;

printf("p.age = %d ",p.age);

system("pause");//暫停 讓cmd窗口不消失

}" data-snippet-id="ext.d6066db64ae382fbe620055ea0d719af" data-snippet-saved="false" data-codota-status="done">#include//定義結構體

struct person {

int age;

};

int main() {

struct person p;//定義一個結構變量

//給結構體里面的屬性賦值

p.age = 18;

printf("p.age = %d ",p.age);

system("pause");//暫停 讓cmd窗口不消失

}

需要注意的是定義結構體的關鍵字struct,還有就是結構體應該在開始的時候聲明,結構體名的書寫C里面一般都是小寫,而不是像java一樣類名開頭要大寫,當然這是編寫習慣,大寫也不會提示錯誤

- 結構體指針變量

//類似于java import 引入頭文件

//定義結構

struct person {

int age;

} *p; //定義了一個結構體指針變量

int main() {

//動態(tài)申請內(nèi)存

p = (struct person*)malloc(sizeof(struct person));

/*

//賦值

(*p).age = 21;//James

//輸出

printf("p.age = %d ",(*p).age);

*/

p->age = 2;

printf("p->age = %d ",p->age);

system("pause");//暫停 讓cmd窗口不消失

}" data-snippet-id="ext.4737c61d1d7144fde6600b5c55841ee5" data-snippet-saved="false" data-codota-status="done">#include//類似于java import 引入頭文件

//定義結構

struct person {

int age;

} *p; //定義了一個結構體指針變量

int main() {

//動態(tài)申請內(nèi)存

p = (struct person*)malloc(sizeof(struct person));

/*

//賦值

(*p).age = 21;//James

//輸出

printf("p.age = %d ",(*p).age);

*/

p->age = 2;

printf("p->age = %d ",p->age);

system("pause");//暫停 讓cmd窗口不消失

}

需要注意的是*p一開始并沒分配內(nèi)存,就類似java的一個變量,只是聲明了并沒有做new的操作,所以我們要new一下,調(diào)用C的分配內(nèi)存的方法給p分配一個person數(shù)據(jù)類型大小的內(nèi)存,并把p強轉為person類型

p = (struct person*)malloc(sizeof(struct person));

在上面我們看到兩種給結構體變量賦值的方式,這并沒有好壞自分,看個人習慣

方式一:(*p).age = 21;//James

*p表示數(shù)據(jù)類型person,這類似java里面 類名.數(shù)據(jù)類型

方式二:p->age = 2;//James

p表示指針,p->則指向這個數(shù)據(jù)類型age的地址

- 函數(shù)

//聲明一個函數(shù)

int add(int x,int y);

int main() {

int x = 1,y = 1;

//使用函數(shù)

int z = add(x,y);

printf(" x + y = %d ",z);

system("pause");//暫停 讓cmd窗口不消失

}

//實現(xiàn)函數(shù)

add(int x,int y) {

return x + y;

}" data-snippet-id="ext.803a7d9dff5358b0e7d8a459a77be2f2" data-snippet-saved="false" data-codota-status="done">#include//聲明一個函數(shù)

int add(int x,int y);

int main() {

int x = 1,y = 1;

//使用函數(shù)

int z = add(x,y);

printf(" x + y = %d ",z);

system("pause");//暫停 讓cmd窗口不消失

}

//實現(xiàn)函數(shù)

add(int x,int y) {

return x + y;

}

在C里面函數(shù)需要在開始的時候先聲明,當然你在生命的時候?qū)崿F(xiàn)也是可以的,但是并不推薦這樣做

//聲明并實現(xiàn)一個函數(shù),不推薦

int add(int x,int y) {

return x + y;

}

int main() {

int x = 1,y = 1;

//使用函數(shù)

int z = add(x,y);

printf(" x + y = %d ",z);

system("pause");//暫停 讓cmd窗口不消失

}" data-snippet-id="ext.8f8fada690b48a9c13afd0279bc0899c" data-snippet-saved="false" data-codota-status="done">#include//聲明并實現(xiàn)一個函數(shù),不推薦

int add(int x,int y) {

return x + y;

}

int main() {

int x = 1,y = 1;

//使用函數(shù)

int z = add(x,y);

printf(" x + y = %d ",z);

system("pause");//暫停 讓cmd窗口不消失

}

NOTE:函數(shù)里面的變量x,y是局部變量和mian里面的x,y是全局變量,當局部變量和全局變量重名時候,在局部變量作用域作用的是局部變量而不是全局變量

我們來舉個例子:

void swap(int x,int y) {

int temp = x;

x = y;

y = temp;

printf("交換之中 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

}

int main() {

int x = 1;

int y = 2;

printf("交換之前 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

swap(x,y);

printf("交換之后 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

system("pause");//暫停 讓cmd窗口不消失

}

" data-snippet-id="ext.938d608d1a2c4452fd8c56aca844d1e3" data-snippet-saved="false" data-codota-status="done">#includevoid swap(int x,int y) {

int temp = x;

x = y;

y = temp;

printf("交換之中 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

}

int main() {

int x = 1;

int y = 2;

printf("交換之前 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

swap(x,y);

printf("交換之后 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

system("pause");//暫停 讓cmd窗口不消失

}

執(zhí)行結果:

小編推薦一個學C語言/C++的學習裙【 六九九庆揪,四七零式曲,五九六 】,無論你是大牛還是小白缸榛,是想轉行還是想入行都可以來了解一起進步一起學習吝羞!裙內(nèi)有開發(fā)工具,很多干貨和技術資料分享内颗!

我們清楚的可以看到,實際交換值得是局部變量x,y,全局變量x,y的值并沒有改變.

那我們要交換連個數(shù)的值怎么辦呢?

//void swap(int x,int y) {

// int temp = x;

// x = y;

// y = temp;

// printf("交換之中 ");

// printf(" x = %d ",x);

// printf(" y = %d ",y);

//}

void swap(int* px,int* py) {

int temp = *px;

*px = *py;

*py = temp;

};

int main() {

int x = 1;

int y = 2;

printf("交換之前 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

swap(&x,&y);

printf("交換之后 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

system("pause");//暫停 讓cmd窗口不消失

}

" data-snippet-id="ext.dc28d5cce7118561d1e816cb5af4d85a" data-snippet-saved="false" data-codota-status="done">#include//void swap(int x,int y) {

// int temp = x;

// x = y;

// y = temp;

// printf("交換之中 ");

// printf(" x = %d ",x);

// printf(" y = %d ",y);

//}

void swap(int* px,int* py) {

int temp = *px;

*px = *py;

*py = temp;

};

int main() {

int x = 1;

int y = 2;

printf("交換之前 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

swap(&x,&y);

printf("交換之后 ");

printf(" x = %d ",x);

printf(" y = %d ",y);

system("pause");//暫停 讓cmd窗口不消失

}

我們需要用指針來交換,我們傳入全局變量x,y的地址,交換x,y的地址,達到數(shù)據(jù)交換的結果,其實交換的不是數(shù)據(jù),而是x,y的地址

NOTE:在C里面并不支持方法的重載,也就是說,不能有兩個方法的名字是一樣的

- 函數(shù)指針

//聲明一個函數(shù)

int add(int x,int y);

int main() {

//定義一個函數(shù)指針

int (*fp)(int,int);

//給函數(shù)指針賦值

fp = add;

//函數(shù)指針的使用

int i = 1,j = 2;

int z = fp(i,j);

printf("i + j = %d ",z);

system("pause");//暫停 讓cmd窗口不消失

}

//實現(xiàn)函數(shù)

add(int x,int y) {

return x + y;

}" data-snippet-id="ext.68828294814c04f5833bacac36200def" data-snippet-saved="false" data-codota-status="done">#include//聲明一個函數(shù)

int add(int x,int y);

int main() {

//定義一個函數(shù)指針

int (*fp)(int,int);

//給函數(shù)指針賦值

fp = add;

//函數(shù)指針的使用

int i = 1,j = 2;

int z = fp(i,j);

printf("i + j = %d ",z);

system("pause");//暫停 讓cmd窗口不消失

}

//實現(xiàn)函數(shù)

add(int x,int y) {

return x + y;

}

我們在開始的地方聲明了一個add方法,并在后面實現(xiàn)了這個函數(shù),我們在main里面第一了一個傳參類型為兩個int的函數(shù)指針fq,然后將fq指向了add函數(shù)的地址在后面我們使用fq就和add的效果一樣了.因為他們指向的都是同一個內(nèi)存地址

- 結構體中的函數(shù)指針

#include//實現(xiàn)函數(shù)

int fun(int x,int y);

struct person {

int age;

//函數(shù)指針

int (*add)(int,int);

};

int main() {

//定義一個結構體指針

struct person* p = (struct person*)malloc(sizeof(struct person));

//給函數(shù)指針賦值

p->add = fun;

int x = 3,y = 1;

//通過一個函數(shù) 一個一個屬性賦值

p->age = p->add(x,y);

printf("p->age = %d ",p->age);

system("pause");//暫停 讓cmd窗口不消失

}

int fun(int x,int y) {

return x + y;

}

我們在開始的地方聲明一個fun函數(shù),并在后面實現(xiàn)了它,我們創(chuàng)建了一個結構體person,并定義了一個指針*p,為他分配了person大小的內(nèi)存,并把它強轉為person,我們將person中的函數(shù)指針add指向了函數(shù)fun,在后面我們?yōu)檫@個add函數(shù)傳入了參數(shù),并把指針p的age的地址指向了函數(shù)的返回值钧排。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市均澳,隨后出現(xiàn)的幾起案子恨溜,更是在濱河造成了極大的恐慌,老刑警劉巖找前,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件糟袁,死亡現(xiàn)場離奇詭異,居然都是意外死亡躺盛,警方通過查閱死者的電腦和手機系吭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來颗品,“玉大人肯尺,你說我怎么就攤上這事∏啵” “怎么了则吟?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長锄蹂。 經(jīng)常有香客問我氓仲,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任敬扛,我火速辦了婚禮晰洒,結果婚禮上,老公的妹妹穿的比我還像新娘啥箭。我一直安慰自己谍珊,他們只是感情好,可當我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布急侥。 她就那樣靜靜地躺著砌滞,像睡著了一般。 火紅的嫁衣襯著肌膚如雪坏怪。 梳的紋絲不亂的頭發(fā)上贝润,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天,我揣著相機與錄音铝宵,去河邊找鬼打掘。 笑死,一個胖子當著我的面吹牛鹏秋,可吹牛的內(nèi)容都是我干的稳析。 我是一名探鬼主播喧伞,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼黎做,長吁一口氣:“原來是場噩夢啊……” “哼谬盐!你這毒婦竟也來了絮供?” 一聲冷哼從身側響起符隙,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤盯仪,失蹤者是張志新(化名)和其女友劉穎忍饰,沒想到半個月后绝骚,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體耐版,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年压汪,在試婚紗的時候發(fā)現(xiàn)自己被綠了粪牲。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡止剖,死狀恐怖腺阳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情穿香,我是刑警寧澤亭引,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站皮获,受9級特大地震影響焙蚓,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一购公、第九天 我趴在偏房一處隱蔽的房頂上張望萌京。 院中可真熱鬧,春花似錦宏浩、人聲如沸知残。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽橡庞。三九已至,卻和暖如春印蔗,著一層夾襖步出監(jiān)牢的瞬間扒最,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工华嘹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留吧趣,地道東北人。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓耙厚,卻偏偏與公主長得像强挫,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子薛躬,可洞房花燭夜當晚...
    茶點故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容