[c] sizeof dla zmiennej w rekordzie.

0

Witam,

Mam następujący problem; podeprzę się trochę kodem:

struct cos_t{
    char name[10];
};


struct cos_t * cos;
cos = (struct cos_t*)malloc(sizeof(struct cos_t));
strncpy(cos->name, tekst, sizeof(struct cos_t.name));

Chodzi mi o drugie sizeof, jak sprawdzić wielkość name zawartego w cos_t? Nie chcę wpisywać konkretnej wartości, bo zmiana struktury bedzie prowadzić do komplikacji modyfikacji kodu. Można zrobić to tak: sizeof(cos->name) (wg mnie nie jest to profesionalne rozwiązanie), lecz jeśli w pewnym miejscu będzie występować tylko sprawdzanie wielkości bez utworzonego rekordu jako zmiennej?

0

Dodaj sobie define albo jakąś stałą zmienną rozmiar i jej używaj zamiast stałych znakowych.

// dokladnie, nie sprawdza sie ponownie niczego o czym z gory wiesz wszystko [mf]

0
  1. sizeof(cos_t::name)
  2. sizeof(cos->name) też jest ok.

1 użytkowników online, w tym zalogowanych: 0, gości: 1