C dilinde volatile anahtar kelimesi ne işe yarar?

Cevap

volatile, derleyiciye bu değişkenin program akışı dışında değişebileceğini söyler. Derleyici değeri bir yazmaçta önbelleğe almaz, her erişimde bellekten yeniden okur.

Kullanım alanları:

  • Donanım yazmaçları (memory-mapped I/O)
  • Kesme servis rutininde (ISR) değiştirilen global değişkenler
  • Çok iş parçacıklı ortamda başka bir görevin değiştirdiği bayraklar
volatile uint8_t veri_hazir = 0;

void UART_IRQHandler(void) {
  veri_hazir = 1;
}

int main(void) {
  while (!veri_hazir) { }  // volatile olmasaydı sonsuz döngüye optimize edilebilirdi
}
  1. Bir yazmaçtaki belirli bir biti set, clear ve toggle eden C kodunu yazın.KolayC ProgramlamaEmbedded
  2. Stack ile heap arasındaki fark nedir? Gömülü sistemlerde dinamik bellek kullanımından neden kaçınılır?OrtaC ProgramlamaEmbedded
  3. Endianness nedir? Little-endian ile big-endian farkı nedir?KolayC ProgramlamaEmbedded

Bu konuda başka bir soru biliyor musun?

Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.

Soru ekle