Advertisement

关于字符串与非字符串的空间

阅读量:

前言

对于从事嵌入式驱动开发的工程师来说,由于工作内容多涉及系统底层,因此必须具备更为深入的内存操作相关知识。本文中,我们通过(void*)参数形式,对C语言中所涉及的字符空间非字符空间 在参数传递过程中的特性进行探讨。
在本文所讨论的范畴内,无论涉及的是字符空间 还是非字符空间 ,其本质均指向内存中所存在的连续存储区域 ,例如数组或结构体等数据结构,而非单个变量的传递情形。
针对此类连续存储区域,在进行函数处理时,通常采用地址传递 的方式加以实现。这种方式不仅有助于提高程序运行效率,同时还能有效降低对内存资源的占用程度。

单个参数传递机制

在嵌入式系统中,针对单个数据的传输过程,通常采用数据类型作为参数传递的实现方式:

复制代码
    传递一个整型的数据:int
    传递一个整型数据的地址:int*
    传递一个字符型数据的地址:char*
    
    
      
      
      
    

字符空间

针对字符空间(可将其视为字符串)而言,通常采用以下方式实现参数的传递:

复制代码
    对于可变的字符空间:char*
    对于不可变的字符空间:const char*
    
    
      
      

全部评论 (0)

还没有任何评论哟~