zoukankan      html  css  js  c++  java
  • 21年3月31日C语言概述(五)

    1. static >> 静态关键字 (静态变量,就是static修饰的变量)
    2. static如何实现只初始化一次的
    3. static作用域
    4.const

    5.boold的假有哪些

    6.将亡值

    7.在多线程下,static安全吗?

    1.  static  >>  静态关键字    (静态变量,就是static修饰的变量)

    >>  静态变量只初始化一次,它可以延长生命周期特性)

    >>  它在数据区开辟空间         

      函数内的变量,局部变量,开辟在栈区

      函数外的变量,全局变量,开辟在数据区

    >>  当静态变量在函数内部的时候,它任然在数据区开辟空间(特性)

    >>  我把它理解成这是个异类,它是函数内的不死变量不会随着函数的调用周期而销毁。(理解方式)

    2.  static如何实现只初始化一次的

    static通过内存位来做记录初始化前标志为0初始化后标志为1

    通过检查这个标志实现初始化一次

    3.  static作用域

    对于静态局部变量,static改变了生存周期,作用域为函数内

    对于静态全局变量,static改变了可见性,作用域为本文件内

        所谓改变可见性,是说这个静态全局变量,只在当前的.cpp中可以用。  >>  可理解成私有

    4.const

    const对变量声明为只读特性,  >>  可读  不可写

    记住,没有  可写  不可读  的玩意

    5.boold的假有哪些

    false  >>  0 (数字0)  >>  ''  >>  NULL (空指针)

    上述4个是假,除此之外的都是真

    bool可用减一实现震荡    (因为真假在切换)

    6.将亡值

    将亡值  >>  存储在空间  >>  只能读其值,不能对其赋值 

    当调用某个函数,执行完了之后的返回值就存于临时空间,这个返回值就是将亡值。

    把这个值一读取,临时空间就消亡了   (读取方式可以是  用该函数的返回值  进行赋值操作)

    一个区分  左值和右值  的便捷方法:

    看能不能对表达式取地址,若能,则为左值,若不能则为右值。所有的具名变量都是左值,而右值是不具名的。

    7.在多线程下,static安全吗?

    不安全,具体后期分析。

    还有异变关键字

    Linux学习笔记
  • 相关阅读:
    js--在页面元素上(移动到或获取焦点)、鼠标离开(或失去焦点)
    Oracle 树操作、递归查询(select…start with…connect by…prior)
    oracle 错误码查看命令oerr ora及常用错误码总结--不断更新
    Dbvisual连接远程数据库报错Error Code: 17401
    struts2 转发、重定向概述
    javascript array操作
    理解 Node.js 里的 process.nextTick()
    js的in运算符与instanceof运算符
    Javascript引擎单线程机制及setTimeout执行原理说明
    NodeJS错误处理最佳实践
  • 原文地址:https://www.cnblogs.com/zealwang/p/14604057.html
Copyright © 2011-2022 走看看