先吐槽下csdn,我的**被吃了,重新發一遍,心累qaq
相比上篇,現在改進後的**已經可以完全實現c和c++之間注釋的轉換了
並對上篇的**進行了一些改良 看起來更加直觀一些
注釋轉換的原理就不再贅述了
相比於初版 自定義了乙個convertcomment.h的標頭檔案 將函式宣告部分放入其中 讓**看起來更具有可讀性
自定義標頭檔案部分
#ifndef _convertcomment_h
#define _convertcomment_h
#includeusing namespace std;
//函式宣告
void eventpro(char ch);
void eventproatno(char ch);
void eventproatc(char ch);
void eventproatcpp(char ch);
void eventproatstr(char ch);
file* openfile(const char *pathname, const char *mode);
void closefile(file *fp);
void writedata(char ch, file *fp);
void writedata(char ch1, char ch2, file *fp);
void writedoublespace(file *fp);
#endif
主函式部分
#include#include"convertcomment.h"
using namespace std;
extern "c" int convertcomment(file *inputfile, file *outputfile);
int main()
主函式部分進行了改寫 不至於暴露太多實現的部分 也看起來更加簡潔明瞭
實現部分
#include#include"convertcomment.h"
using namespace std;
extern "c" int convertcomment(file *inputfile, file *outputfile);
typedef unsigned long ulong;
//定義狀態
typedef enum
enum_state;
//定義狀態機
typedef struct
state_machine;
//state_machine g_state;
enum_state g_pre_state;
///file* openfile(const char *pathname, const char *mode)
return fp;
}void closefile(file *fp)
void writedata(char ch, file *fp)//封裝 直觀的表現函式功能並縮減**
void writedata(char ch1, char ch2, file *fp)
void writedoublespace(file *fp)
//int convertcomment(file *inputfile, file *outputfile//入口
{ if(inputfile==null || outputfile==null)
{ cout<<"input argument is invalid."<
所有的光鮮亮麗都敵不過時間,並且一去不復返——《了不起的蓋茨比》
c 貪吃蛇改進版
上次的貪吃蛇的基礎上改變了食物的顏色,增加了讀取上次記錄,本來想寫乙個讀取最高紀錄的,沒寫出來,太菜,下面是 紅色豆,可以讀寫上次記錄,最大記錄還是寫不進去 include include include include include include include includeusing na...
c版基於鍊錶的插入排序(改進版)
1.c c todo c版基於鍊錶的插入排序 author koma include include typedef struct nodelnode,linklist 建立並初始化乙個帶頭節點的鍊錶 linklist init else r p return list 列印鍊錶 void prin...
C語言實現linux網絡卡檢測 改進版
c語言 shell 實現linux網絡卡狀態檢測 和 c語言實現linux網絡卡連線檢測 2文的方法各有缺陷,比如有些系統執行ifconfig需要root許可權,要不就不支援ioctl fd,siocgmiiphy,ifr 這樣的操作。以下給出了c語言實現linux網絡卡連線檢測 的改進版實現與c語...