To forum używa plików cookies
To forum wykorzystuje pliki cookies do przechowywania informacji o Twoim logowaniu, jeśli jesteś zarejestrowany, oraz informacji o Twojej ostatniej wizycie, jeśli nie jesteś zalogowany. Pliki cookies to niewielkie pliki tekstowe zapisywane na Twoim komputerze; cookies ustawiane przez to forum mogą być używane wyłącznie na tej stronie i nie stanowią zagrożenia dla bezpieczeństwa. Cookies na tym forum śledzą również, które tematy zostały przez Ciebie przeczytane oraz kiedy miało to miejsce. Prosimy o potwierdzenie, czy akceptujesz, czy odrzucasz zapisywanie tych plików cookies.

Niezależnie od wyboru w Twojej przeglądarce zostanie zapisany plik cookie, aby zapobiec ponownemu zadawaniu tego pytania. W każdej chwili będziesz mógł zmienić ustawienia cookies, korzystając z linku w stopce strony.

Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Język C - co autor miał na myśli ???
#7
To zależy od kompilatora (czy jest natywny dla danego procesora czy nie). Typy zmiennych można sobie "definiować" samemu w pewnym sensie, czyli zakładać nazwy alternatywne dla podstawowych typów zmiennych , ale też nieco bardziej skomplikowane konstrukcje. Czasem ma to za zadanie po prostu uwidocznienie danej definicji zmiennej że jest do jakiegoś konkretnego celu, a czasem potrafi to uprościć życie. Instrukcja w C/C++ do tego to "typedef".
Przykład prosty to:
Kod:
typedef int points ;
Zdefiniowaliśmy alias dla zmiennej int, który się nazywa "points". Potem można robić:
Kod:
points  punkty;
To takie zastosowanie estetyczne.
Ale można też robić bardziej trudne aliasy, do wskaźników, struktur itp.

Trzeba by poszukać w bibliotekach które Twój kod załącza (jawnie, albo nie jawnie) bo gdzieś w nich jest prawdopodobnie napisane
Kod:
typedef long long _IO
albo coś nieco bardziej skomplikowanego Smile
Natomiast jeśli to jest natywny kompilator, to można tego nie znaleźć, i ten typ zmiennej może być bardziej "sprytny", na przykład mieć gdzieś ograniczenie że jest np "read only" czy coś w tym stylu.


Edit: Znalazłem (chyba to to): biblioteka core_cm3.h
Tam stoi coś takiego:
Kod:
#ifdef __cplusplus
  #define   __I     volatile             /*!< Defines 'read only' permissions                 */
#else
  #define   __I     volatile const       /*!< Defines 'read only' permissions                 */
#endif
#define     __O     volatile             /*!< Defines 'write only' permissions                */
#define     __IO    volatile             /*!< Defines 'read / write' permissions              */

/*@} end of group Cortex_M3 */

Cytuj


Wiadomości w tym wątku

Skocz do:


Użytkownicy przeglądający ten wątek: 2 gości