我是靠谱客的博主 还单身戒指,最近开发中收集的这篇文章主要介绍C语言的内存映像与存储类型,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一,内存映像

    当在命令行中执行一个程序时,计算机会给这个程序映射一个独立的虚拟的内存空间,该程序就在这样的空间中运行,这个空间称为内存映像
 

二,存储类型 -------//用于定义变量

    在定义变量时,需要指定变量的数据类型,
    数据类型主要用于说明该变量的存储方式和在内存中的长度,
    例如:
        int a;  //变量a的存储方式为二进制补码,长度为4个字节
        double  b; //变量b的存储方式为符号位+指数位+小数位,长度为8个字节
    
    但是,在定义变量时,除了需要指定数据类型之外,还必须指定变量的存储类型。
    因为存储类型主要用于说明变量的存放位置,存储期和作用域,变量的这些特征能够让我们更精准在程序中使用变量。

1,存储类型的分类
    
    在linux中,C语言中的存储类型分为6类:
    自动存储类型
    寄存器存存储类型
    全局非static静态存储类型
    全局static静态存储类型
    局部static静态存储类型
    外部存储类型
    
2,如何定义不同存储类型的变量 
                                             变量定义位置      变量定义的形式
    自动存储类型                       代码块内             int a;              //代码块:用{}括起来的一块代码
    寄存器存存储类型                代码块内             register int a;
    全局非static静态存储类型    代码块外             int a;
    全局static静态存储类型        代码块外            static int a;
    局部static静态存储类型        代码块内            static int a;
    外部存储类型                        代码块外            extern int a;

3,不同存储类型变量的特征

不同存储类型变量的特征
 在内存中的位置存储期  作用域 链接
自动存储类型  定义-代码块结束代码块 空链接
寄存器存存储类型寄存器/栈 定义-代码块结束代码块 空链接
全局非静态存储类型.data/.bss 定义-程序结束 多文件外部链接
全局静态存储类型  .data/.bss 定义-程序结束 单文件内部链接
 局部静态存储类型  .data/.bss 定义-程序结束 代码块 空链接
外部存储类型 .data/.bss 定义-程序结束 多文件外部链接


 

最后

以上就是还单身戒指为你收集整理的C语言的内存映像与存储类型的全部内容,希望文章能够帮你解决C语言的内存映像与存储类型所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(28)

评论列表共有 0 条评论

立即
投稿
返回
顶部