c3.cpp

时间:2023-03-10 01:20:35
c3.cpp
  1. Char16_t(在字符串前加u)和char32_t(在字符串前加U)都是无符号的,数字代表长度(底层长度随系统而定)
  2. 在函数bool中,任何非0值都代表真(即使他是个负数),只有0代表false
  3. 一种约定以字母k开头的名称被表示为常量
  4. 常量的定义和赋值一定要在一条语句中,因为只定义常量而不去赋值导致常量的值是不确定的并且还不能够修改
  5. Const比define好在哪里:(1)可以指明更多复杂的类型(2)可以限制常量的作用域(3)直接指明常量的类型
  6. 当数字非常大的时候long都无法表示时,可以用浮点数表示
  7. 数字中不能有空格
  8. cout.setf(ios_base::fixed,ios_base::floatfield);cou会把浮点数结尾的0删除,但是使用setf就可以敛去这种行为
  9. PS:浮点运算的速度比整数慢,并且精度要低很多
  10. 浮点常量在默认情况下是double类型的
  11. 在进行类型提升时,不管是有符号还是无符号的类型,只需要遵循把低类型的转化为高类型的即可
  12. 强制类型转换的格式:typename (value)或者(typename) value
  13. Static_cast<typeName> (value)强制类型转换比传统转换更严格
  14. 数组的长度必须是常量
  15. Sizeof(数组名)得到的是数组的字节数-------数组占的内存大小
  16. Cin.getline(字符,长度,结束字符).------------这个功能一般被大家忽略啦;;Cin使用空格换行回车来确定字符串的结束位置,但是getline{cin.getline(name,Arsize)}和get{ cin.get (name,Arsize)}是以一整行输入,直到碰到换行符,getline将丢弃换行符,get将换行符保存在输入序列中(所以当连续使用get时第二次就不会读取字符串而是读入换行符,其中一个解决办法是cin.get(name,Arsize).get()),两者相比get更安全
  17. Strcpy(charr1,charr2)把charr2复制到charr1中,Strcat(charr1,charr2)把2链接到1中去,但是当数组长度不够时,程序就会有潜在的隐患,而strncat和strncpy接受指出目标数组最大允许长度的第三个参数,所以更为安全
  18. String具有自动调节大小的功能
  19. “+*(和)*+”之间加上想要表示的字符串可以显示特殊的符号