c++给数组赋值

c++的基础不牢啊.甚至是c语言也忘记了..所以以后遇到感觉怪异的语法都保存下来,没事翻翻看看

例一

void getSize(int n[])  //把数组名传给函数的形参时候 一维数组[]不用指定大小   二维数组[n][] 形参必须要指定第一维的大小
{
std::cout<<sizeof(n)<<std::endl; //这里是4 虽然形参写的是n[]但是n在这里就是一个指针,指向实参的数组的首地址
}
1
int _tmain(int argc, _TCHAR* argv[]) 2 { 3 char s[3] = 4 { 5 'a', 6 'b', 7 'c', //最后一个值后面的逗号有没有都可以 8 }; 9 std::cout<<s<<std::endl; //会出问题 因为s指向的数组没有用''结尾 10 for (int i = 0; i < 3; i++) 11 std::cout<<s[i]<<std::endl; //'a' 'b' 'c' 指的是换行 12    13 int n[3] = {0}; 14 for (int i = 0; i < 3; i++) 15 std::cout<<n[i]<<std::endl; //数组的局部变量初始化的时候给赋值了一个,后面没被赋值的都被自动赋值0; 如果没被赋值,就会是随机数     
    std::cout<<sizeof(n)<<std::endl; //sizeof(n) = 3 * sizeof(int) = 12 这里的n代表的是整个数组的长度 如果把n传给了参数,那么形参n就是指针了..sizeof(n) = 4
    std::cout<<sizeof(n)/sizeof(n[0])<<std::endl; //3 这是一个求解数组大小的小技巧
    
21 getchar(); 22 return 0; 23 }
原文地址:https://www.cnblogs.com/silentNight/p/5295404.html