036

036




Liczenie bajtów w funkcjach wewnętrznych

unikanie awarii; unikanie nieoczekiwanych wyników

Przed

float *pfltBuf;

pfltBuf = (float *) GlobalAlloc(GMEM_FIXED, 4); if (pfltBuf)

memcpy(pfltBuf, pfltŹród, 4);

Po

float * pfltBuf;

pfltBuf = (float *) GlobalAlloc(GMEM_FIXED, 4*sizeof(float));

if (pfltBuf)

memcpy(pfltBuf, pfltŹród, 4*sizeof(float));

Wielkości argumentów funkcji wewnętrznych są zawsze mierzone w bajtach. Należy się upewnić, że dostosowujemy ich wielkość zgodnie z rozmiarem struktury, na której działamy. Jeśli na przykład tworzymy tablicę liczb typu float, to należy pomnożyć długość tablicy przez rozmiar typu float. Podobnie postępujemy w wypadku innych własnych struktur.

Warto zwrócić uwagę na to, że zupełnie inaczej jest w wypadku kodu, który działa na tablicy wskaźników. Wówczas kompilator automatycznie dostosowuje odwołania do tablicy i operacje arytmetyczne na wskaźnikach (zwiększanie, zmniejszanie itp.) na podstawie rozmiaru struktury.


Liczenie bajtów w instrukcji mempcy

unikanie awarii; unikanie nieoczekiwanych wyników

Przed

float pfltBuf[50]; memcpy(pfltBuf, pfltŹród, 4);

Po

float pfltBuf[50];

memcpy(pfltBuf, pfltŹród, 4*sizeof(float));


Wyszukiwarka

Podobne podstrony:
32Ostrożność przy wybieraniu typów ze znakiem lub bez znaku unikanie nieoczekiwanych wynikówPrzed in
068 TIF unikanie nieoczekiwanych wynikówUżywanie deklaracji const *Przed void Napis::lnicjNapis(char
122 TIF Utworzenie wirtualnych destruktorów w wypadku spodziewanego dziedziczenia unikanie nieoczeki
137 TIF my przy lym osiruznosu. 103Zachowywanie znaczenia operatorów unikanie nieoczekiwanych
img126 126 współrzędnych możer^- obliczać albo za pomocą maszyny do liczenia i tablic funkcji
img126 (11) 126 współrzędnych nożerg obliczać albo za pomocą maszyny dó liczenia i tablic funkcji
img126 126 współrzędnych możer^- obliczać albo za pomocą maszyny do liczenia i tablic funkcji
img126 126 współrzędnych możer^- obliczać albo za pomocą maszyny do liczenia i tablic funkcji
państwa Funkcja wewnętrzna zapewnienie porządku i bezpieczeństwa wewnątrz państwa Funkcje

więcej podobnych podstron