关于谈谈C/C++的常用注释的三种方法

                               今天顺手谈谈注释的问题。

对于一段代码或者一个大工程,如果说没有注释,写的程序只有自己懂得。假如有一天,你的工程或者你的代码给别人修改,没有相应的注释。这会使人奔溃,人家可能要花很长的时间来慢慢解读,这是大大浪费时间,时间就是金钱啊。所以一段代码或者一个工程,注释起很大的作用。不多说,直接开门见山。

第一种方法:(两个斜杆)/ /

相信大家接触都是以这种方式去注释,举个例子:

#include <stdio.h>
int main(void)
{

    printf("语句1\n");//注释
    printf("语句2\n");
//  printf("语句3\n");
    printf("语句4\n");

	return 0 ;
}

但是这种方式只能适用几行代码的注释,如果说面对100行、1000行等代码注释,那岂不是累死人。当你想注释一大串代码时,可能你会马上想到第二种方法。

第二种方法:()/ *  * /

比如说这样子:

#include <stdio.h>
int main(void)
{

    printf("语句1\n");
    printf("语句2\n");
    printf("语句3\n");
  /*
    printf("语句4\n");   
    printf("语句5\n");
    printf("语句6\n");
    printf("语句7\n");
  */  
    printf("语句8\n");   

	return 0 ;
}

这个确实很方便,但是问题来了,这个注释方式是不能嵌套的,可能自己的小程序小工程没有感觉,但是面对大工程来说,在你使用/ * * /时候,中间也有存在/ * * /这样 的注释,结果会引发一系列的错误。举个例子。

 

编译器不会那么只能,它只会寻找与离   / * 最近的 */去配对,它不管后面的如何如何。所以这也是它的缺点。

第三种方法:使用预处理形式    #if 0  #endif

对于一大串代码的注释,我个人比较推荐使用这个方式,因为这种方式可以避开上面的缺陷。用例子说话。

 

#if   0与#endif  之间的代码就会被注释掉。

所以我们可以根据第三种方法进行扩展学习

顺便介绍给大家:

在C语言中我们也会用到#if 0,#else,#endif 语句  或   # if 1,#else,#endif 语句

#include <stdio.h>

int main(void)
{

#if 1
    printf("语句1\n");
#else
    printf("语句2\n");
#endif

	return 0 ;
}

此时printf("语句2\n");的语句被注释掉了,永远没有办法执行,而printf("语句1\n");是被编译的;

如果将#if 1变为#if 0,printf("语句2\n");被编译,而printf("语句1\n");永远没有办法被执行。如下

#include <stdio.h>

int main(void)
{

#if 0
    printf("语句1\n");
#else
    printf("语句2\n");
#endif

	return 0 ;
}

========================================================================================================================================================================================================有天我在调试的发现,预处理也可以这样使用

例子1:

#include <stdio.h>

int main(void)
{

#if 1
    printf("语句1\n");
    #if 0
    printf("语句2\n");
    #endif

    #if 1
    printf("语句3\n");
    #endif

    #if 0
    printf("语句4\n");
    #endif

#endif

	return 0 ;
}

例子2:

#include <stdio.h>

int main(void)
{

#if 1
    printf("语句1\n");
    #if 0
    printf("语句2\n");
        #if 1
        printf("语句3\n");
            #if 1
            printf("语句4\n");
                 #if 1
                printf("语句n\n");
                #endif
            #endif
        #endif
    #endif
    #if 1
    printf("语句5\n");
    #endif

    #if 0
    printf("语句6\n");
    #endif
printf("语句7\n");


#endif

	return 0 ;
}

所以,每一 #if 0 或者#if 1  都是要有一个#endif 去匹配,少一个也不行,而且也是按照就近原则的方式去匹配。这类似于像嵌套,读者可以根据上面的例子去思考或者研究。

有不足之处,欢迎多多交流,欢迎评论。

  • 31
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: C/C++算法常用手册是程序员日常工作中不可或缺的工具书之一。该手册主要收录了程序员在开发过程中常用的算法,以及相应的代码实现。该手册涵盖了诸如数据结构、排序、查找、递归、贪心、动态规划、字符串等算法,帮助程序员快速掌握这些算法的基本原理和实现方式。简单地说,该手册将算法的核心原理和实现细节集中在了一起,兼顾了易懂性和实用性。 随着程序员需求的不断增加,该手册逐渐扩充了更多的算法类型。同时,该手册还根据算法的不同应用场景进行分类,方便程序员快速查找和使用。例如,程序员可以通过该手册快速了解不同数据结构的原理和实现方法,了解常见算法的时间复杂度和空间复杂度,还可以查找常见的实际问题中的算法实现方式。 总的来说,C/C++算法常用手册是程序员必备的工具之一,帮助程序员提高算法的实现能力和解决实际问题的能力,提高程序的效率和质量。 ### 回答2: C/C++常用算法手册是一本介绍计算机算法的参考手册,主要面向C/C++语言程序员。该手册总结了各种常用的算法,包括排序、查找、图论、字符串等。通过该手册的学习,可以让程序员更好地掌握C/C++编程的技巧和方法。 该手册中介绍了排序算法,包括冒泡排序、插入排序、选择排序、快速排序、归并排序等。对于不同的排序算法,手册详细介绍了它们的思路和实现方法,同时也对它们的时间复杂度和效率进行了分析和比较。 在查找方面,手册介绍了常用的顺序查找和二分查找算法,它们可以帮助程序员快速地定位和查找数据。 在图论和字符串方面,手册介绍了很多有用的算法,如最短路径算法、最小生成树算法、字符串匹配算法等。这些算法可以帮助程序员更好地解决实际问题。 总之,C/C++常用算法手册是一本非常实用和有价值的参考书,它可以让程序员掌握更多的C/C++算法技巧,提高程序员的编程能力和开发效率。 ### 回答3: C/C++ 常用算法手册是一本总结了 C/C++ 编程语言中常用的算法、数据结构、设计模式等知识的参考书籍。 相对于其他语言,C 和 C++ 语言有着更高的执行效率和更多的编程自由度,也因此被广泛应用于开发高性能、底层的软件程序。在这样的应用场景下,对算法和数据结构的掌握显得尤为重要。 C/C++ 常用算法手册涵盖了各种基础的算法和数据结构,比如排序、查找、链表、树等。同时,它也介绍了一些常用的高级算法,比如动态规划、贪心算法和回溯算法。 此外,该手册还详细说明了面向对象编程领域中常用的设计模式和其实现方式,例如工厂模式、装饰器模式等。 阅读 C/C++ 常用算法手册不但能够让读者掌握常用算法的实现方法,更能提高编程思维和技巧。另外,在实际应用中,编写高效的程序不仅需要算法的巧妙运用,更需要细致、严谨的代码风格和设计思路。此时,该手册中丰富的示例代码和编码规范性的讲解也能为读者提供很大的帮助。 总之,C/C++ 常用算法手册是一本既实用又深入的参考书,适合广大 C/C++ 开发者和算法学习者阅读。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值