# HG changeset patch # User Masataka Kohagura # Date 1445941766 -32400 # Node ID 23e796173c91f3c9c94afef69d03d8b4dc891c33 # Parent 9a1bb8f439f5a191f8714aa5ca9e409ae690c0dc fix malloc in in BitInfo.bitContainer diff -r 9a1bb8f439f5 -r 23e796173c91 c/bitVector/main.cc --- a/c/bitVector/main.cc Mon Oct 26 18:36:19 2015 +0900 +++ b/c/bitVector/main.cc Tue Oct 27 19:29:26 2015 +0900 @@ -16,9 +16,10 @@ printf("Array Num : %d\n",bi->arrayNum); - unsigned long bitContainer[bi->arrayNum]; + bi->bitContainer = (unsigned long*)malloc(sizeof(unsigned long)*bi->arrayNum); + for (int i = 0; i < bi->arrayNum; i++) { - bitContainer[i] = 0; + bi->bitContainer[i] = 0; } unsigned long tmp = 1; int arrayPosition = 0; @@ -26,13 +27,9 @@ arrayPosition = bitSetPosition / bitBlock; bitSetPosition = bitSetPosition % bitBlock; - - bi->bitContainer = bitContainer; tmp = tmp << (bitBlock - 1 - bitSetPosition); bi->bitContainer[arrayPosition] = bi->bitContainer[arrayPosition] | tmp; - bitPrint(bi); - return bi; }