代码的健壮性 / 鲁棒性
下面代码为strlen函数的实现
#include <stdio.h>
#include <assert.h>
size_t my_strlen(const char* str)//const防止指针被篡改
{
size_t count = 0;
assert(str != NULL);//确保了指针的有效性
while (*str != '\0')
{
count++;
str++;
}
return count;
}
int main()
{
char arr[] = "hello bit";
size_t len = my_strlen(arr);
printf("%zd\n", len);
return 0;
}
健壮性:
在前面学习的const与assert( ) 相结合,可以对非法指针进行拦截。这样使代码更加健壮。这里对健壮性不做多解释。
size_t : size_t = unsigned int,意为无符号整形,长度没有负数,固然返回值类型定义为无符号整形更为准确。
鲁棒性:
鲁棒是Robus的音译,也就是健壮和强壮的意思,比如说,在计算机软件输入错误、磁盘故障、网络过载或有意攻击情况下,是否不死机,不崩溃,就是该软件的鲁棒性。