C語言實現類方式之檔案

2021-06-03 17:01:47 字數 2168 閱讀 4727

今晚的月光很好,剛好傾瀉到我的書桌上,恬靜、安詳,心裡卻有一種孤獨。這個城市彷彿與我無關、這裡的人好像與我無關,自己坐在乙個安靜的角落裡,泡一杯

茶水敲打著鍵盤,聽著**,流淌自己的靈魂。人生吧,也許就這樣,平淡而幸福,也許是最完美的追求。也只有在這樣的夜晚,坐在窗戶旁邊,看著街邊路燈發著懶懶的光,

什麼都不想,讓思維在那一刻停留,多麼美好而單純的感覺啊 !嘻嘻,寫的這一段算是一段優美的前奏吧,接下來該寫今天的東東了

c語言實現類的最簡單的方式就是用檔案作為包含邊界,用一對檔案(.h檔案和.c檔案)來表示乙個類。

public的變數和函式寫在.h檔案中,private的變數和函式寫在.c檔案中-------------體現了類的封裝性

以下是我摘錄的design patterns for embedded system in c裡的乙個例子:

設計了乙個感測器類,嘻嘻,這麼巧呢,我們公司就是專門賣感測器的,各式各樣的。。。。。。。。。。。

感測器類sensor,屬性:data elements value, updatefrequency,  filterfrequency

操作:getvalue(), setvalue(v: int), setupdatefreq(r:int), getupdatefreq(), setfilterfreq(ff: int), and       getfilterfreq()

sensor.h檔案原始碼:

#ifndef sensor_h

#define sensor_h

/*## class sensor */

typedef struct sensor sensor;

struct sensor ;

int sensor_getfilterfrequency(const sensor* const me);

void sensor_setfilterfrequency(sensor* const me, int p_filterfrequency);

int sensor_getupdatefrequency(const sensor* const me);

void sensor_setupdatefrequency(sensor* const me, int p_updatefrequency);

int sensor_getvalue(const sensor* const me);

sensor * sensor_create(void);

void sensor_destroy(sensor* const me);

sensor.c檔案原始碼:

#include "sensor.h"

void sensor_init(sensor* const me)

void sensor_cleanup(sensor* const me)

int sensor_getfilterfrequency(const sensor* const me)

void sensor_setfilterfrequency(sensor* const me, int p_filterfrequency)

int sensor_getupdatefrequency(const sensor* const me)

void sensor_setupdatefrequency(sensor* const me, int p_updatefrequency)

int sensor_getvalue(const sensor* const me)

sensor * sensor_create(void)

return me; }

void sensor_destroy(sensor* const me)

free(me); }

測試程式

應用測試

#include "sensor.h"

#include

#include

int main(int argc, char* argv)

這樣就簡單實現了乙個感測器的類,但是這樣只是基於物件的程式設計,還不是物件導向的程式設計,因為物件導向的程式設計的類的三個特徵:

封裝、繼承、多型,到目前為止我們只觸及到了封裝,接下來我們將在此基礎上做修改,實現繼承和多型的特性,才是真正的物件導向噻!

一看時間10:30分了,自己越來越懶了,下班回家了就啥也不想幹了,雖然還有那麼多未幹的事情。

C語言實現檔案複製

使用c語言來複製乙個檔案 包括各種型別 主流的做法有2種 1.自定義函式 2.呼叫系統api 本文介紹自定義函式的方法。檔案型別可以粗略分類為ascii型別和二進位制型別,且大多數為二進位制型別,因此本文採用 fread 和 fwrite 閒話不多說,上 c語言實現檔案複製 srcfile 原始檔 ...

c語言實現檔案查詢

最近學到作業系統的檔案管理,研究了一下檔案查詢,如下 1.完整版 老師給出的示例 include windows.h include stdio.h int num 0 void find char path,char name findclose hfind sprintf szfind,s pa...

C語言實現檔案讀寫

關於c語言的檔案讀寫,我將介紹下面這幾種方式 1.fputc 函式 fputc c,fp 用於將乙個字元寫入檔案 其中,fp為檔案指標變數 c為要寫入的字元,可以是字元常量或字元型變數。函式返回值 如果執行成功,返回寫入的字元 否則,返回eof。int main else fclose fp 關閉檔...