C++ 数组名作为函数参数 都是我的错

void func(char arr[100])
{
    cout<<sizeof(arr);
}

这样一道题,我以为输出的是100呢……
32位系统,结果是4

因为:数组名在函数体中被当成一个指针来使用

#include <iostream>

using namespace std;

void myF( char arr[100])
{
     cout<<sizeof(arr)<<endl;
}


int main(void)
{
    char arr[100];
    myF(arr);    //myF(arr[100]) 其实编译不通过的
    cin.get();
}
原文地址:https://www.cnblogs.com/jiayith/p/3840928.html