编写程序将C / C++代码中的注释去掉
来源:互联网 发布:海康威视有一个无网络 编辑:程序博客网 时间:2024/06/08 14:53
今天看到一道题,觉得可以拿来锻炼一下。就自己做了一遍。
原题链接:关于程序员面试宝典中5.8节面试例题:编写一个函数,实现把C/C++程序代码中的注释去掉
/*************************功能:输入合法的C、C++程序,将注释去掉后输出*注意:“//”“/*”等等双引号之间的字符不予处理,但是/*...*/之间的双引号也不起作用,即当处于两个双引号之间时,/*不起作用,但是如果先有了/*然后出现的双引号则双引号不起作用。***************************/#include<stdio.h>#include<string.h>int main() { char c[1024]; int FLAG=0;//指示是否遇到/* int quote=-1;//指示是否在引号之中,1在,-1不在 int HasPrint=0;//指示当前行是否有输出。 while(gets(c)) { HasPrint=0; for(int i=0; i<strlen(c); i++) { if(FLAG) { if(c[i]=='*'&&c[i+1]=='/') { FLAG=0; i++;//跳过 /* 两个字符的输出 continue; } } else { if(c[i]=='"')quote*=-1; if(quote==-1) { // 如果不在引号之中 if(c[i]=='/'&&c[i+1]=='/') { // 遇到//直接跳过本行 c[i+1]不会越界,最多访问到'\0' break; } if(c[i]=='/'&&c[i+1]=='*') { FLAG=1; } } if(!FLAG) { putchar(c[i]); HasPrint=1; } } } if(HasPrint)printf("\n"); } printf("END!"); return 0;}
0 0
- 编写程序将C / C++代码中的注释去掉
- 去掉c代码中的注释[转]
- 将C/C++代码中的注释删除
- 编写一个删除c语言中的注释语句/* */的程序
- C 语言状态机编程-去掉代码注释
- 去掉C/C++程序代码中的注释
- 去掉C/C++源程序中的注释
- 去掉C/C++源程序中的注释
- 去掉C/C++程序代码中的注释
- 面试题:编写一函数,实现把C/C++程序代码中的注释去掉
- 编写一个函数,实现把C/C++程序代码中的注释去掉,并把结果返回。
- 删除C程序中的注释
- 去除C程序中的注释
- 删掉C程序中的注释
- 去除C程序中的注释
- JS:去掉Java代码中的注释(也适用于JS和C#)
- Android JNI编程(八)——体验AS2.2.2编写Jni程序、Java调C、C调Java函数、将C代码中的Log打印至Logcat
- 编译器练习:将C程序中的注释中的小写字母转换为大写字母
- std::set/std::map 的几个为什么
- Linux之三剑客,awk、sed、grep的用法
- Linux入门:shell编程
- 1668: [Usaco2006 Oct]Cow Pie Treasures 馅饼里的财富
- css下 让元素贴近容器的底部
- 编写程序将C / C++代码中的注释去掉
- Runtime简介
- Sark Sql读取hive数据
- Java 加密解密基础
- C++ 优化
- vb中line的用法
- DG的RFS进程不存在的解决办法
- Android 自定义View(四)IOS LoadingView
- vlc-for-android