Giriş
C11 ile geliyor.
Array Tanımlama
Örnek 1
Şöyle yaparız.
Diziyi heap'te tanımlamak istersek şöyle yaparız.
Yapmamak lazım. Açıklaması şöyle.
C11 ile geliyor.
Array Tanımlama
Örnek 1
Şöyle yaparız.
_Atomic int x[10];
Örnek 2Diziyi heap'te tanımlamak istersek şöyle yaparız.
int * _Atomic x;
Daha sonra şöyle yaparız.x = calloc(10, sizeof(_Atomic int));
for (...)
atomic_init(&x[i], 0);
Atomic Qualifier ve Normal Primitive Tipi Karıştırarak KullanmaYapmamak lazım. Açıklaması şöyle.
...atomic-qualified types are not deemed compatible with qualified or unqualified versions of the types they're based on.Şu kod yanlış.
const int test = 42;
const int * _Atomic atomic_int_ptr;
atomic_init(&atomic_int_ptr, &test);
const int ** int_ptr_ptr = &atomic_int_ptr;
printf("int = %d\n", **int_ptr_ptr); //prints int = 42
Hiç yorum yok:
Yorum Gönder