C++学习日记(一)——记录学习过程中的小知识

  • 类型转换:当赋给无符号类型一个超出它表示范围的值的时候,结果是初始值对无符号类型表示数值总数取模后的余数。如
unsigned char c = -1;

结果c=255.  当赋给带符号类型一个超出它表示范围的值时,结果是未定义的。

取模运算过程如下:

设数c,a,b;求a对b取模后的运算结果:
c=a/b向负无穷方向舍弃小数后的整数商,可以理解为向下取整。
如a=-,b=256,则c=-256,取整得c=-,
取模运算结果r=a-c×b。此处r=255

 

  • 函数的作用域:
  1. 函数原型作用域:函数原型声明(一般在所有程序前的那个声明)的时候形参的作用域仅限于那一个()括号,如:
  void  Example(int e1,double e2);

    e1和e2的作用域就是这个括号,不能用于其他任何地方。

   2.局部作用域:函数的形参,函数中定义的变量,{}内定义的变量具有局部作用域。举例:

void function(int a)
{
        int b;
        cin>>b;
        if(b)
           { 
                 int c;    
            }
         .......
}

其中a、b的作用域为这个function,c的作用域为if的{ }内。

 

          3.类作用域:类体内和成员函数的函数体。

   4.文件作用域:不属于以上作用域的,起始于声明点,在整个C++文件内有效。

  • 可见性 

  如果在外层中声明了一个标识符,且内层中没有同名标识符的情况下,内层可以直接调用该标识符。如果内层也声明了同名的标识符,那么外层的就不可调用,称为不可见。

  • 生存期

    动态生存期:从声明点开始,到作用域结束。

      静态生存期:整个C++文件都存在,如拥有文件作用域的标识符或块内用static修饰的标识符。

 

 

 

 

原文链接: https://www.cnblogs.com/maxu1999/p/12723949.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    C++学习日记(一)——记录学习过程中的小知识

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/342866

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午1:47
下一篇 2023年3月2日 上午1:47

相关推荐