62 lines
1.3 KiB
C
62 lines
1.3 KiB
C
void testBrackets(int* ar, int len) {
|
|
int i;
|
|
int errors = 0;
|
|
for (i = 0; i < len; i++) {
|
|
ar[i] = i;
|
|
}
|
|
for (i = 0; i < len; i++) {
|
|
if (ar[i] != i) {
|
|
printf("error: [%d] %d != %d\n", i, ar[i], i);
|
|
errors++;
|
|
}
|
|
}
|
|
printf("Errors: %d\n", errors);
|
|
}
|
|
|
|
void testBrackets2D(int** ar2D, int lenX, int lenY) {
|
|
int x, y;
|
|
int errors = 0;
|
|
for (x = 0; x < lenX; x++) {
|
|
for (y = 0; y < lenY; y++) {
|
|
ar2D[x][y] = x * lenY + y;
|
|
}
|
|
}
|
|
for (x = 0; x < lenX; x++) {
|
|
for (y = 0; y < lenY; y++) {
|
|
int expected = x * lenY + y;
|
|
int val = ar2D[x][y];
|
|
if (val != expected) {
|
|
printf("error: [%d][%d] %d != %d\n", x, y, val, expected);
|
|
errors++;
|
|
}
|
|
}
|
|
}
|
|
printf("2D Errors: %d\n", errors);
|
|
}
|
|
|
|
void testHeap() {
|
|
int* ar = (int*) malloc(100);
|
|
testBrackets(ar, 25);
|
|
free(ar);
|
|
}
|
|
|
|
void testHeap2D() {
|
|
int lenX = 10;
|
|
int lenY = 5;
|
|
int* ar = (int*) malloc(lenX * lenY * 4);
|
|
int** ar2D = (int**) malloc(lenX * 4);
|
|
int i;
|
|
for(i = 0; i < lenX; i++) {
|
|
ar2D[i] = ar + lenY * i;
|
|
}
|
|
testBrackets2D(ar2D, lenX, lenY);
|
|
free(ar);
|
|
free(ar2D);
|
|
}
|
|
|
|
int main() {
|
|
testHeap();
|
|
testHeap2D();
|
|
return 0;
|
|
}
|