Dyskusja:C/Tablice - więcej
Najnowszy komentarz napisał(a) 11 lat temu Adam majewski w wątku Definiowanie rozmiaru tablicy
Definiowanie rozmiaru tablicy
edytujMożna też zdefiniować rozmiar tablicy przy użyciu zmiennej dla tablic dynamicznych :
#include <stdio.h>
#include <stdlib.h> // malloc
/*
gcc GiveNumberTest.c -Wall
./a.out
*/
unsigned char ArraySize;
const unsigned char period= 7;
// dynamic array
double *Angles;
double angle = 0.99;
/* ----------------------------------------- main -------------------------------------------------------------*/
int main()
{
Angles = malloc( period * sizeof(double) );
if (Angles == NULL )
{
fprintf(stderr," Could not allocate memory\n");
return 1;
}
else fprintf(stderr," memory is OK \n");
fprintf(stderr," Initialized of array by assignment \n");
int i;
for (i = 0; i < period; ++i)
{
Angles[i] = (double)i/period;
printf("angle= %f \n", Angles[i]);
}
free(Angles);
return 0;
}
Czyli były 3 możliwości użycia zmiennej do definiowania rozmiaru tablicy:
- dla tablic statycznych
- z użyciem define
- w standardzie C99
- dla tablic dynamicznych
Co o tym sądzicie ?