`

柔性数组

 
阅读更多
#include <iostream>
#include <malloc.h>
using namespace std;

class A{
public:
    A(){}
public:
    char c;
    char data_arr[];//柔性数组并不占空间,有些编译器也支持arr[0],一般可用于变长结构体中,如在网络编程中需要发送的content长度不确定
};

int main()
{
    cout << "sizeof(A):" << sizeof(A)<<endl;
    int len = 3;
    A *a = (A*)malloc(sizeof(A)+sizeof(char)*len);
    for(int i=0;i<len;i++){
        a->data_arr[i] = i+'0';
    }
    for(int i=0;i<len;i++){
        cout << a->data_arr[i] << endl;
    }
    cout << "sizeof(*a):" << sizeof(*a) << endl;    free(a);
    return 0;
}

sizeof(A):1
0
1
2
sizeof(*a):1
分享到:
评论

相关推荐

    用柔性数组方式实现斐波那契数列

    用柔性数组方式实现斐波那契数列,里面运用c语言进行编程,一个c文件,大家相互学习

    柔性数组成员

    C99 中,结构体中的最后一个元素允许是未知大小的数组,称为柔性数组成员(flexible array member),柔性数组成员前面必须至少还有一个其他成员,而且柔性数组成员必须是结构体的最后一个成员。一个包含柔性数组...

    C语言柔性数组实例详解

    本文实例分析了C语言柔性数组的概念及用法,对于进一步学习C程序设计有一定的借鉴价值。分享给大家供大家参考。具体如下: 一般来说,结构中最后一个元素允许是未知大小的数组,这个数组就是柔性数组。但结构中的...

    SoftArray.rar_95O_柔性数组

    柔性数组的设计,方便使用,欢迎下载参考!

    C语言变长消息定义:柔性数组

    本文主要介绍C语言中柔性数组问题,感性趣的朋友可以看看。

    gcc编译器优化选项分析

    详细介绍了gcc编译器的优化选项 -O1 -O2 -O3,gcc手册相关部分的翻译

    预防内存操作bug

    用C/C++说明以下几点如何预防内存操作的问题? 1、防止数组越界操作,使用柔性数组; 2、内存泄露和多次释放,使用智能指针;

    非常好的C语言基础项目资源,分享出来.zip

    c语言基础 . ├── C language │ ├── C语言函数库详解.docx │ ├── C语言深度解剖 ...│ │ │ ├── 5、柔性数组.txt │ │ │ ├── 6、贪心法.txt │ │ │ └── 7、预处理.txt │ │ └── 目录.txt

    C语言重点知识总结梳理

    纯手撕,如有问题欢迎指正: ...21. C语言柔性数组 应用: 22. C语言动态通讯录改造 文件操作相关的知识: 23. C语言文件操作 应用: 24. C语言文件改造通讯录 最后: 25. C语言程序环境 26. C语言预处理

    RIL一款专门为嵌入式平台开发的无线通信模块适用于资源受限物联网终端设备

    模组驱动使用插件化方式管理,同一个...256 Bytes编译器:由于RIL使用了一些C99的特性(柔性数组、内联),所以编译器需要开启对C99的支持。对于IAR,它默认是打开的,而Keil MDK需要手动增加编译选项(--c99 --gnu) 。

    C语言的基础知识学习个人总结集合.zip

    C语言的基础知识学习...│ │ │ ├── 5、柔性数组.txt │ │ │ ├── 6、贪心法.txt │ │ │ └── 7、预处理.txt │ │ └── 目录.txt │ ├── LinuxC冷知识 │ │ ├── close(1)和输出到文件中.txt │

    c语言深度剖析

    第一章 关键字......................................................... 1.1,最宽恒大量的关键字----...1.14.2,柔性数组..................................... 1.14.3,struct与 class的区别.................

    C语言深度揭秘

    1.14.2,柔性数组...................................................39 1.14.3,struct与 class的区别...............................40 1.15,union关键字......................................................

    C语言深度解剖(完美版).pdf

    第一章关键字..................................................................................................................................9 1.1,最宽恒大量的关键字----auto............................

    C语言深度剖析 陈正冲

    1.14.2,柔性数组.............................................................................................................39 1.14.3,struct 与class 的区别..............................................

    C语言深度解剖_word版

    C语言深度解剖 word版 解开程序员面试笔试的秘密第一章关键字......................................................................................................................9 1.1,最宽恒大量的关键字...

    C 语言 深 度 剖析

    1.14.2,柔性数组.............................................................................................................39 1.14.3,struct 与class 的区别..............................................

Global site tag (gtag.js) - Google Analytics