V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xiewei20082008
V2EX  ›  程序员

这应该是 [最快&最简便] 的 N 维数组动态建立的方法了吧?

  •  
  •   xiewei20082008 · Sep 22, 2016 · 2783 views
    This topic created in 3504 days ago, the information mentioned may be changed or developed.

    以三维数组为例:

    int m,n,p;
    m = 2;n=3;p =4;
    int *t = new int[m*n*p];
    int (*a)[n][p];
    a = ( int (*)[n][p] )t;
    
    3 replies    2016-09-23 08:37:01 +08:00
    yangxin0
        1
    yangxin0  
       Sep 22, 2016
    代码是给人看的, 你这代码有点炫技了, 多写几行多好啊,大家一目了然
    wodesuck
        2
    wodesuck  
       Sep 22, 2016
    @yangxin0 讲道理这还是有别的好处的,这样分配的内存是连续的,访问的时候也少了一次寻址

    int (*a)[n][p] = malloc(sizeof(int[m][n][p]));
    这样还能更短
    zhanglintc
        3
    zhanglintc  
       Sep 23, 2016 via iPhone
    一脸茫然
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1092 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 18:31 · PVG 02:31 · LAX 11:31 · JFK 14:31
    ♥ Do have faith in what you're doing.