C注釋轉換為C 注釋

2021-08-02 02:21:04 字數 3019 閱讀 5887

我們將c注釋轉換為c++的注釋思路如下圖:

此次我們通過將需要轉換的c注釋內容存於input.c檔案中,轉換後的內容存於output.c檔案中。

input.c檔案

// 1.一般情況

int num = 0;

/* int i = 0; */

// 2.換行問題

/* int i = 0; */int j = 0;

/* int i = 0; */

int j = 0;

// 3.匹配問題

/*int i = 0;/****xx*/

// 4.多行注釋問題

/*int i=0;

int j = 0;

int k = 0;

*/int k = 0;

// 5.連續注釋問題

/**//**/

// 6.連續的**/問題

/***/

// 7.c++注釋問題

// /**************/

output.c檔案

// 1.一般情況

int num = 0;

// int i = 0;

// 2.換行問題

// int i = 0;

int j = 0;

// int i = 0;

int j = 0;

// 3.匹配問題

//int i = 0;/****xx

// 4.多行注釋問題

////int i=0;

//int j = 0;

//int k = 0;

//int k = 0;

// 5.連續注釋問題

////

// 6.連續的**/問題

//*// 7.c++注釋問題

// /**************/

**及注釋:commentconvert.h

#ifndef __commentconvert_h__

#define __commentconvert_h__

#define _crt_secure_no_warnings 1

#include #include #define in_filename "input.c"

#define out_filename "output.c"

typedef enum state

es;void commentchange(file *pin, file *pout);

void normal_change(file *pin, file *pout, es *state);

void c_change(file* pin, file* pout, es *state);

void cpp_change(file* pin, file* pout, es *state);

#endif

test.c

#include "commentconvert.h"

int main()

pout = fopen(out_filename, "w");

if(null == pout)

commentchange(pin, pout);

}

commentconvert.c

#include "commentconvert.h"

void commentchange(file *pin, file *pout)

}printf("注釋轉換已完成,儲存在output.txt中\n");

fclose(pin);

fclose(pout);

}void normal_change(file *pin, file *pout, es *state)

break;

case eof:

fputc(first, pout); //直接將結束符號輸入到目標檔案中

*state = end_state;

break;

default:

fputc(first, pout);

break;

}}void c_change(file *pin, file *pout, es *state)

else

*state = null_state;

break;

case'*'://如果是**/則需要寫入第乙個*,並將第二個*用ungetc放回

fputc(first, pout);

ungetc(second, pin);

break;

default:

fputc(first,pout);

ungetc(second,pin);//釋放second,否則*a的情況會漏掉a的判定

break;

}break;

case'/': //注釋符號

second = fgetc(pin);

switch(second)

break;

case '\n': //多行注釋問題,如果first是\n則 下一行開頭注釋

fputc(first,pout);

fputc('/',pout);

fputc('/',pout);

break;

case eof:

fputc(first,pout);

break;

default:

fputc(first, pout);

break;

}}void cpp_change(file *pin, file *pout, es *state)

}

注釋轉換(C注釋轉換為c 注釋)

對於注釋轉換首先給出我的測試圖 由圖可以看出將左邊的c語言注釋轉換為右邊c 注釋就是注釋轉換 首先說明一下轉換思想方法 1.建立兩個檔案input.c和output.c,input.c裡面用來讀取c語言的注釋,output.c裡面儲存轉換成為c 的注釋,中間的轉換過程就是 完成,當然檔案名字和作用自...

注釋轉換 C注釋轉換為標準C 注釋

注釋轉換 c 注釋轉換為標準c語言注釋 直接上 include include include typedef enum state state typedef enum tag tag pragma warning disable 4996 state annotationconvert file...

注釋轉換 (C語言注釋轉換為c 注釋)

1.一般情況 int num 0 int i 0 2.換行問題 int i 0 int j 0 int i 0 int j 0 3.匹配問題 int i 0 xx 4.多行注釋問題 int i 0 int j 0 int k 0 int k 0 5.連續注釋問題 6.連續的 問題 7.c 注釋問題 ...