首页 > 技术文章 > 关于sizeof的一些小细节

daanzhijia 2017-04-04 23:20 原文

#include<iostream>
using namespace std;
char test1()
{
    cout << "test1" << endl;
    return 'c';
}
int test2()
{
    cout <<"test2" << endl;
    return 1;
}
char test3(int *p)
{
    *p = 10;
    return 1;
}
int main()
{
    int p=0;
    cout << sizeof(test1()) << endl;
    cout << sizeof(test2()) << endl;
    cout << sizeof(test3(&p)) << endl;
    cout << p << endl;
    system("pause");
    /*
        resault:
        1
        4
        1
        0
        不会输出test1,test2;
        也不会改变p值
        因为不会调用函数,sizeof的值是返回值类型的大小
    */
}

更详细的内容见博客
http://blog.csdn.net/K346K346/article/details/46500779

推荐阅读