/*
* File: main.cpp
* Author: annhe
*
* Created on 201年月日, :
*/
#include <cstdlib>
#include <iostream>
using namespace std;
void foo(char buf3[20])
{
cout<<sizeof(buf3[20]);
}
int main(int argc, char* argv[])
{
char *buf = "hello world";
char buf2[20] = "hello world";
cout<<sizeof(buf)<<endl<<sizeof(buf2)<<endl<<sizeof("hello world")<<endl;
foo("hello world");
return 0;
}
$ ./sizeof.exe
4 //sizeof buf 是求一个指针的存储空间大小,都是4
20 //数组名不是做右值,计算结果是整个数组存储空间的大小
12 //字符串的大小
1 //字符的大小,buf[20]只有一个字节
|