#include #include #include #define ALB_SKAICIUS 3 int *a[ALB_SKAICIUS]; void Cleanup() { for ( unsigned int i = 0; i < ALB_SKAICIUS; ++i ) { free(a[i]); } } /* bool TestFnc( int **p, unsigned int dydis, int sk ) { int *p_tmp = malloc( dydis * sizeof **p ); if (!p_tmp) { printf("Klaida: nagaliu priskirti atminties bloko.\n"); return false; } for ( unsigned int i = 0; i < dydis; ++i ) { p_tmp[i] = i + sk; } *p = p_tmp; return true; } */ bool TestFnc( int **p, unsigned int dydis, int sk ) { *p = malloc( dydis * sizeof **p ); if (!*p) { printf("Klaida: nagaliu priskirti atminties bloko.\n"); return false; } for ( unsigned int i = 0; i < dydis; ++i ) { (*p)[i] = i + sk; } return true; } int main() { if(!TestFnc( &a[0], 10, 0 )) { printf("Klaida: (1)\n"); Cleanup(); return 1; } if(!TestFnc( &a[1], 8, 10 )) { printf("Klaida: (2)\n"); Cleanup(); return 1; } if(!TestFnc( &a[2], 4, 100 )) { printf("Klaida: (3)\n"); Cleanup(); return 1; } printf("%d\n", a[0][0]); printf("%d\n", a[0][3]); printf("%d\n", a[1][0]); printf("%d\n", a[1][7]); printf("%d\n", a[2][0]); printf("%d\n", a[2][3]); Cleanup(); return 0; }