求数组或者字符串的长度sizeof与strlen
sizeof是运算符,是C语言中保留的关键字,它的参数类型多重多样,包括数组、指针、类型、对象、函数等,主要用来得到数据在内存中所占用的存储空间,以字节为单位来计数。而且在编译时已经计算出结果,因此不能用来返回动态分配控件的大小。如果想使用sizeof来计算数组元素的个数,那么可以用
len=sizeof(array)/sizeof(array[0])
的方式求得。
strlen看名字就知道这个是求字符串相关的长度,它是函数,返回c风格字符串的长度。参数只能为(char*).
知识点:字符要比字符数组多一位——’\0’结束标志。
string中的size()和length()
它们在c++中并没有区别,length是沿用C语言的风格,在c++扩充了STL之后,为了兼容所以才加入size()函数,以STL容器的属性身份存在。也可以用来求数组的长度,如A.size或A.length