我发现C++有很多知识课上是不教的 于是我想让大家把知道的所有关于C++的知识全部发到这篇讨论的回复区(比如输出'\n'比输出endl快 python比C++好用 等等) 以供参考

4 comments

  • @ 2024-11-23 13:50:17

    《Python比C++好用》

    还有Python的P是大写的吧

    以及记得提醒各位新手们"\n"不是"/n"(本人黑历史)

    • @ 2024-11-19 22:19:11

      &&的运算优先级比||的高 所以true || true && false == true || false == true 而 (true || true) && false == true && false == false

      • @ 2024-11-19 22:13:14

        unsigned关键字可以使变量失去存储负数的资格 让他存储双倍正数(用法:unsigned int a) const关键字屁用没有 static关键字可以让你合法地将数组开在主函数内(开得很大也不容易炸) 不过数组大小只能由固定数字决定 不能由变量决定 所以只能用来恶搞老师

        • @ 2024-11-19 22:00:32

          我先以身作则:

          1.n % m(n < m)时n % m = n

          2.printf("%.nf",num)可以保留浮点数的小数点后面n位

          3.没事别开long long 数字范围不是越大越好 乱开long long不仅会导致内存占用过多还会导致对变量进行操作时变慢

          4.for循环第一个分号前面可以定义多个变量 第二个分号后面的条件不一定要与定义变量有关(可以是true或者什么) 第二个分号后面不一定只能填i++ 每一次循环要执行的条件都可以放在第二个分号后面(条件用逗号隔开)

          5.++i执行时用到了3行汇编代码 而i++用到了4行 所以理论上++i比i++快

          6.假设有一个数组a = {1,2}和变量i = 0 a[i++] = 1 而 a[++i] = 2 因为++i是先用再增加 而i++是先增加再用

          7.不止有+=,-=,*=,/= 还有%=

          8.~是按位取反 a^b是按位异或 a&b是按位与 a|b是按位或

          9.在main上面定义的变量都是初始化为0的 在main里面则默认是其内存地址

          10.int a[10] = {0}不可取 纯纯的迷信 要用就用cstring库里的memset(a, sizeof(a), 0(初始化值))

          11.memset函数就是给数组的所有元素全部设为0或-1或true或false 其他的不能用

          12.iostream库里包含了max和min函数 没想到吧 你们被老师给骗了

          13.码风没必要随老师 自己爱咋样咋样 别邯郸学步

          14.数组一定要学老师开在主函数上面 不然直接爆炸(我是重度强迫症 已经养成坏习惯了)

          15.在用sort排序非普通数组且从头排到尾时可以把sort(a, a + n)换成sort(a.begin(),a.end()) 更方便

          16.给我背算法模板去 背完了? 学指针去 学会了? 学位运算去 学通了? 咋滴你国赛金牌啊

          • @ 2024-11-19 22:02:02

            我这一堆是面向新生的 老生基本都知道 阶段4及以上的老登看个乐子就行

        • 1