linux kernel变长数组使用示例
生活随笔
收集整理的這篇文章主要介紹了
linux kernel变长数组使用示例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在一個結構體中,定義了長度為0的數組,而我們有希望這個變成數組和結構體是物理連續的,如圖所示:
可以參考linux kernel的代碼,如下所示:
struct skcipher_sg_list {struct list_head list;int cur;struct scatterlist sg[0]; }; #define MAX_SGL_ENTS ((4096 - sizeof(struct skcipher_sg_list)) / \sizeof(struct scatterlist) - 1)sgl = sock_kmalloc(sk, sizeof(*sgl) + sizeof(sgl->sg[0]) * (MAX_SGL_ENTS + 1) 《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的linux kernel变长数组使用示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: armv8/armv7中SCTLR的区别
- 下一篇: linux kernel中cache代码