C'deki her ifadenin bir değeri var mı? Sonuç olarak void işlev çağrısına ne dersiniz? [çoğaltmak]

0

Soru

Başlıklı.

void foo() {}
int main(void) {
  foo();  // what is the value of this expression?
}

Bu demek oluyor mu void ayrıca C'de bir değer türü var mı? Ya da bunu nasıl anlamalıyım?

c
2021-11-24 03:26:57
2

En iyi cevabı

1

Bir void ifadesinin değeri yoktur ve aslında kullanılamaz. Bu, C standardının 6.3.2.2 bölümünde ayrıntılı olarak açıklanmıştır:

Bir void ifadesinin (var olmayan) değeri (var olan bir ifade) tip void) hiçbir şekilde kullanılmayacak ve örtük veya açık dönüşümler (hariç void) uygulanmaz böyle bir ifade. Başka türde bir ifade ise boşluk olarak değerlendirildi ifade, değeri veya göstergesi atılır. (Geçersizlik ifade onun için değerlendirilir yan etkileri.)

2021-11-24 03:40:26
-1

Evet ve hayır. Hayır, void değeri olmayan bir türdür. Adından da anlaşılacağı gibi, bir ifadede türün yokluğunu temsil eder. Değeri var ama bir türü yokluğu temsil eden Evet, çünkü anlamına gelir. Ve bu değer, farklı veri türlerini ayırt etme yeteneği gerektiren bir dilde hiçbir şeyi temsil etmemektir.

2021-11-24 03:41:15

Ne demek bu açıklama, "her ifadede C bir değer" olduğu doğru mu?
Becavalier

Diğer dillerde

Bu sayfa diğer dillerde

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................