sizeof是一个操作符,不是函数,后面的括号不是必须的,但是后面是类型就必须要加eg:sizeof(short)
计算的是系统为他后面的变量或者类型名分配的空间大小,无论七种是否存储了有用的数据(获取的是内存大小)
strlen()是库函数,()里面必须是字符串指针或者是字符串常量,它返回的是检测对象中第一个‘\0’前的字符个数,不含‘\0’.
#include"string,h"
#include"stdio.h"
int main()
{
int a[]={1,2,3};
int b[5]={1,2,3};
char s[50]="123456";
char p[100]={'a','s','d','2','\0','p','u','4','\0'};
printf("a=%d,b=%d\n",sizeof(a),sizeof(b)); /12,20
printf("sizeof=%d\n",sizeof s);//这里s没有加()也是正确的 50
printf("strlen(s)=%d\n,strlen(p)=%d\n",strlen(s),strlen(p)); 6,4
return 0;
}