• c语言知识点总结-------静态区、堆、栈、常量区等


    在C语言中地址占4个字节

    1.编程语言发展

    低级语言----->高级语言

    机器语言 ---> 汇编---->高级语言(C语言、C++、JAVA等)

    机器语言 :0101 0010 1010 1100                汇编语言:ADD

                   0101 0010 1010 1100                              SUB

    机器语言的优缺点:

    (1)有效、速度快

    (2)编写困难、推广困难、容易出错

    (3)CPU的架构不同,相应的内核有一定的区别,不方便移植

    2.头文件 <>与“”的区别 

    <  >:  系统定义的头文件   先去系统文件中寻找,如果没找到进入到我们自定的工程文件中寻找

    “   ”:   自定义头文件         先去我们的自定义的工程文件中寻找,再到系统文件中寻找

    涉及寻找的速度问题 “  ” 运行慢

    3.C程序特点

    一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数

    1.一个C语言源程序可以由一个或多个源文件组成。

    2.每个源文件可由一个或多个函数组成。

    3.一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。

    4.源程序中可以有预处理命令(include 命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。

    5.每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。

    6.标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。

    int  main()

    {

         return 0;

    }

     4.数据类型的分类

    1. 基本数据类型:short   int   long    float    double    char 
    2. 空类型 -- void
    3. 指针类型:地址类型
    4. 构造类型:数组,结构体,共用体

    float  -- 单精度浮点型                                                     double -- 双精度浮点型

    4个字节   -- 可以精确到小数点后6位                                   8个字节 -- 可以精确到小数点后10位                              

    5..标识符

    由数字 字母 下划线 美元符$组成

    开头不能为数字

    不能关键字

     6.内存储存区域

    1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。

    2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。

    3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后由系统释放。

    4、文字常量区 —常量字符串就是放在这里的。 程序结束后由系统释放 。

    5、程序代码区—存放函数体的二进制代码。

  • 相关阅读:
    不使用库函数,编写函数int strcmp(char *source, char *dest) 相等返回0,不等返回-1【转】
    atol实现【转】
    atol的实现【转】
    关于内存中栈和堆的区别(非数据结构中的堆和栈,区别)【转】
    ubuntu下安装android模拟器genymotion【转】
    buntu下命令行安装jdk,android-studio,及genymotion虚拟机来进行android开发【转】
    Ubuntu下安装Android studio【转】
    C++模板(二)【转】
    【转】iOS中设置导航栏标题的字体颜色和大小
    【转】Java 截取字符串
  • 原文地址:https://www.cnblogs.com/jacklong-yin/p/9613037.html
Copyright © 2020-2023  润新知