TomekTomek55 napisał(a):
Powiedzcie jaki jest prawidłowy zapis aby uzyskać taki efekt:(czyli zapis całej tablicy słowem w jednej linii)
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Niemożliwe jest bezpośrednie przypisanie, ponieważ nie jest to wskaźnik na typ "char", a pięcioelementowa tablica znaków.
Można dokonać bezpośredniego zapisu łańcucha znakowego za pomocą poniższej funkcji:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Ogólnie sposobów jest wiele, bo można alokować pamięć, ale na początek to powinno wystarczyć.
jkarczew napisał(a):
xor napisał(a):
typedef struct {
char NAZWA[5];
uint16_t obroty;
uint8_t czas ;
} INPUT ;
ale w takiej sytuacji to chyba to wyżej nie jest potrzebne, a INPUT table[10] = można zastąpić char table[10] i będzie to samo !?.
A jeżeli już mamy typ strukturalny czyli INPUT table[10] to wynika z tego że mamy tablice 10-cio elementową i wewnątrz niej możemy się odwołać do tablicy NAZWA[5], więc taki zapis
table[0].NAZWA[5] = "Text"
table[1].NAZWA[5] = "ABCD";
itd.powinien działac
Oczywiście "INPUT table[10]" nie jest równoważne "char table[10]" z przyczyn które Kolega wyjaśnił w drugim zdaniu.
Odwołując się do konkretnego indeksu tablicy "NAZWA" (swoją drogą element o indeksie 5 nie istnieje!), tak naprawdę w efekcie uzyskamy dostęp do zmiennej typu "char" do którego nie można zapisać łańcucha znakowego typu "char*"!