SORU
25 Mart 2010, PERŞEMBE


En hızlı C 2 boyutlu bir dizi sıfır şekilde?

Defalarca Bu şu an yaptığım şey bu C. büyük 2d bir dizi sıfır istiyorum:

for(j = 0; j < n; j  )
{
    for(i = 0; i < n; i  )
    {  
        array[i][j] = 0;
    }
}

Memset kullanarak denedim:

memset(array, 0, sizeof(array))

Ama bu sadece 1D diziler için çalışıyor. 2D dizinin içeriğini ben basit bir beşgen kullanmaktır, ilk satırı sıfır olur, ama sonra rastgele sayılar büyük bir yük var ve çöker.

CEVAP
25 Mart 2010, PERŞEMBE


memset(array, 0, sizeof(array[0][0]) * m * n);

m n iki boyutlu bir dizi (örneğin, bir kare, iki boyutlu bir dizi var, m == n), genişlik ve yükseklik.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dirty Loops

    Dirty Loops

    21 Mayıs 2007
  • Ralph Phillips

    Ralph Philli

    5 Aralık 2006
  • Roger Huffman

    Roger Huffma

    4 ŞUBAT 2007