字符串长度函数C语言(字符串长度)
sprintf(a,"%2.2s",a);中第一个2表示最终生成的字符串不超过2个字符,如果超出了最后一位用字符串结束符填充,第二个2表示在后面的字符串中最多去2个字符,所以该语句最终结果会把前面赋好的a的第一个字符以及一个字符串结束符赋值到第一个a中,即最终结果是a中有一个字符和一个字符串结束符printf("%s",a);打印的结束条件是字符串结束符,而a相当于一个指针,所以该语句打印从地址a开始的所有字符,直到遇到字符串结束符位置,即结果不确定。
而当设置2.2之后,如前面分析,回添加一个字符串结束符,所以就不会超出2位了。