• c++第十七天


    p101~p104:

    1、数组中的元素个数也属于数组类型的一部分。

    2、编译的时候数组的维度应该是已知的,也就是说维度必须是 const expression

    3、const expression 是指值不会改变并且在编译过程就能得到计算结果的表达式。

    4、不存在引用的数组,但是存在数组的引用。

    5、在使用数组下标的时候,通常将其定义为 size_t类型

    6、数组所用的下标运算符是由 C++语言直接定义的。

    7、编译器不会检查下标是否越界!

    练习3.27

    (a)非法。buf_size 不是一个常量表达式
    (b)合法。
    (c)当 txt_size()是 constexpr 时正确;否则错误
    (d)非法。没有空间可存放空字符!

    练习3.28

    全局变量被初始化为 null或 0,
    而局部变量的值是未定义的。

     

    练习3.29
    相比于 vector来说:
    1)数组的初始化不灵活。(必须提供一个常量表达式)
    2)数组的容量无法动态改变。

    练习3.30
    访问非法内存区域。元素ia[10]是未定义的,

    int iap[10]仅定义了下标0到9的元素。

    练习3.31

    int main()
    {
        int arr[10];
        for (int i = 0; i < 10; ++i) {
            arr[i] = i;
        }
        return 0;
    }

    练习3.32

    1

    int main()
    {
        int arr[10];
        for (int i = 0; i < 10; ++i) {
            arr[i] = i;
        }
        int arr2[10];
        for (int i = 0; i < 10; ++i) {
            arr2[i] = arr[i];
        }
        return 0;
    }

    2

    #include<vector>
    using std::vector;
    int main()
    {
        vector<int> ivec;
        for (int i = 0; i < 10; ++i) {
            ivec.push_back(i);
        }
        vector<int> ivec2 = ivec;    // 参考p88
        return 0;
    }

    练习3.33

    #include<iostream>
    using std::cin;
    int main()
    {
        unsigned scores[11];
        unsigned grade;
        while (cin >> grade) {
            if (grade <= 100) {
                ++scores[grade/10];
            }
        }
        for (auto x: scores) {
            std::cout << x << std::endl; 
        }
    }

    运行的结果就是

    D:labs>prog1
    2
    3
    4
    5
    ^Z
    4199108
    4199104
    0
    4200976
    6422240
    6422296
    6422476
    1983763024
    1362710793
    4294967294
    1983738842
  • 相关阅读:
    XamarinSQLite教程在Xamarin.iOS项目中定位数据库文件
    在Xamarin.iOS项目中使用预设数据库
    函数封装多个不同按钮的点击事件
    ajax请求数据动态渲染表格
    计算历时长度
    layui单文件上传
    滚动到顶部固定
    下载
    第一个项目技术总结
    单选框
  • 原文地址:https://www.cnblogs.com/xkxf/p/6404832.html
Copyright © 2020-2023  润新知