在c语言中使用strcat去连接两个字符串,strcat(char* s1,char* s2),s1被分配了固定长度的空间,s2指向的字符串的大小不固定,但是所有s2指向的字符串,都肯定能够被s1所连接,也就是说s1的默认分配空间足够大。可是在进行程序静态检查的时候,会报一个warning,说s1是固定长度,s2的长度不固定,有可能会出问题。程序本身运行没问题,请问这种情况是不是可以忽略?还是有其他的好的解决这种静态检查报告warning的方法?
s1分配的空间是固定的,s2是不固定的,尽管你可以肯定s1的空间肯定会容纳s2,但是编译器不会这样考虑,所有会有这个警告。
只要你肯定s1的空间足够大的话 ,这个警告可以忽略。
可以忽略