说明sizeof和strlen之间的区别。】的更多相关文章

解析:由以下几个例子我们说明sizeof和strlen之间的区别.第1个例子: sizeof(ss)结果为4,ss是指向字符串常量的字符指针.sizeof(*ss)结果为1,*ss是第一个字符.第2个例子: sizeof(ss)结果为11,ss是数组,计算到“\0”位置,因此是(10+1).sizeof(*ss)结果为1,*ss是第一个字符.第3个例子: sizeof(ss)结果为100,ss表示在内存中预分配的大小,100×1.strlen(ss)结果为10,它的内部实现是用一个循环计算字符串…
一.sizeof    sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组.指针.类型.对象.函数等.    它的功能是:获得保证能容纳实现所建立的最大对象的字节大小.    由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小.实际上,用sizeof来返回类型以及静态分配的对象.结构或数组所占的空间,返回值跟对象.结构.数组所存储的内容没有关系.    具体而言,当参数分别如下时,sizeof返回的值表示…
#include<stdio.h>#include<string.h>  int main(){ int a,i=0; char ch[10000]; while(scanf("%d",&a)!=EOF&&a!=-1) {  ch[i++]=a; } /* 测试结果 sizeof 测试的是总空间  包括\0  strlen 测试的 是遇到第一个\0之前的长度  */ printf("sizeof计算的长度:%d\n",…
sizeof计算的是栈中大小 P { margin-bottom: 0.21cm; direction: ltr; color: rgb(0, 0, 0); text-align: justify } P.western { font-family: "Times New Roman", serif; font-size: 10pt } P.cjk { font-family: "宋体", "SimSun"; font-size: 10pt }…
sizeof和strlen (string.h) 先看几个例子(sizeof和strlen之间的区别):  (1) 对于一个指针, char* ss ="0123456789"; sizeof(ss)为4, ss是指向字符串常量的字符指针 strlen(*ss)为1,*ss是第一个字符  (2) 对于一个未定义长度的数组名, char ss[] = "0123456789";  sizeof(ss)为11, ss是数组,计算到'\0'的位置,因此是(10+1) ,返…
首先需要说明的是sizeof和strlen都可以求长度,但是却有很大的区别,简单来说可以概括为以下几点: 1.sizeof是一个关键字,而strlen确实一个函数. 2.sizeof求的是字节长度,而strlen求的却是实际长度. 比如int a=1;sizeof(a)==4而strlen(a)=1 3.sizeof求的是分配过来的长度,而strlen求的却是实际使用的长度. 比如:char a[30]="abcd"; sizeof(a)=30;而strlen(a)=4; 4.strl…
1.参数 sizeof是c/c++ 中的一个操作符,其作用是返回对象或数据类型所占的内存字节数. 用法:sizeof(对象).sizeof 对象.sizeof(类型) 如果类型做参数,返回的是该类型所占内存字节数, 对象做参数的几个常用的说明: sizeof(数组名)  返回的是数组所占空间字节数,  如:sizeof(数组名)/sizeof(数组元素类型)    计算数组大小. sizeof(指针) 返回指针类型大小(32位机为4字节) sizeof(*指针) 返回指针所指向数据类型的大小,如…
一.sizeof    sizeof(...)是运算符,而不是一个函数.    sizeof操作符的结果类型是size_t,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组.指针.类型.对象.函数等.    它的功能是:获得保证能容纳实现所建立的最大对象的字节大小.    由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小.    实际上,用sizeof来返回类型以及静态分配的对象.结构或数组所占的空间,返回值跟对象.结构.数组所存储…
转自:http://www.cnblogs.com/carekee/articles/1630789.html 一.sizeof    sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组.指针.类型.对象.函数等.    它的功能是:获得保证能容纳实现所建立的最大对象的字节大小.    由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小.实际上,用sizeof来返回类型以及静态分配的对象.结构或数组所占的…
Sizeof与Strlen的区别与联系 一.sizeof     sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组.指针.类型.对象.函数等.     它的功能是:获得保证能容纳实现所建立的最大对象的字节大小.     由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小.实际上,用sizeof来返回类型以及静态分配的对象.结构或数组所占的空间,返回值跟对象.结构.数组所存储的内容没有关系.     具体…