【C语言】如何写出好的代码?|常见coding技巧|assert代码

举报
謓泽 发表于 2023/09/25 20:28:15 2023/09/25
【摘要】 【C语言】如何写出好的代码?|常见coding技巧|assert代码

如何写出好的代码?

优秀的代码

  • 代码整洁且规范
  • 注释清晰,且通俗易懂(代指写代码的人)
  • 可读性,有效性,可维护性
  • bug尽量能够达到自己能够预期的范围之内,就是bug少,或者几乎没有bug
  • 文档齐全,不乱去堆放 

常见的coding技巧 

  • 养成良好的编码风格
  • 注释必要的还是要去添加,提高代码的可读性
  • 避免编码的陷阱
  • 尽量使用const
  • 使用assert,头文件#include<assert.h>,在assert();里面的表达式如果为真的话,assert表达式为真就什么都不会发生,如果assert的表达式为假,那么就会报错。

在这里简单的跟大家介绍一下const的关键字:const修饰的数据是常类型,常类型的变量或者对象的值是不可以被该变的,也就是被它修饰过的是常量,相比之下const常量和#define是有点类似的,但是在我们用数组的时候还是要区分一下,因为数组里面 [常量表达式]此时我如果 const int n = 10 假设赋值给arr数组,int arr[n] = {0};结果是不行的,虽然加了const关键字,但实际上也只是变量只不过是不能被修改的变量。那么如果我们这里用的是#define—定义符号常量就可以了。  

assert代码使用:

#include<stdio.h>
#include<assert.h>
int My_strlen(const char* pb)
{
	int Count = 0;//计数
	assert(*pb != NULL);//保证指针的有效性 NULL —— 空指针
	while (*pb != '\0')
	{
		Count++;
		*pb++;
	}
	return Count;
}
int main(void)
{
	char arr[20] = "nihao C";
	int ret = My_strlen(arr);
	printf("arr(strlen) = %d\n", ret);
	return 0;
}

最后,我想跟大家说程序遇到bug不要害怕,勇敢的去面对它吧,加油奥里给!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。