İfade (bilgisayar bilimi) - Expression (computer science)

Gelen bilgisayar bilimleri , bir ifade , bir olan sözdizimsel bir de varlık programlama dili onun değerini belirlemek için değerlendirilebilir. Programlama dilinin yorumladığı (özel öncelik ve ilişkilendirme kurallarına göre ) ve başka bir değer üretmek için hesapladığı bir veya daha fazla sabit , değişken , işlev ve operatörün birleşimidir ( durumlu bir ortamda "döndürmek" ) . Matematiksel ifadeler için bu işleme değerlendirme denir .

Basit ayarlarda, elde edilen değer genellikle sayısal, dize , boole , karmaşık veri türü veya diğer türler gibi çeşitli ilkel türlerden biridir .

İfade genellikle ifadeyle - değeri olmayan sözdizimsel bir varlık (bir talimat) ile karşılaştırılır.

Örnekler

Örneğin, 2 + 3olarak değerlendirilen hem aritmetik hem de programlama ifadesidir 5. Değişken bir ifadedir çünkü bellekteki bir değeri ifade eder y + 6, aynı zamanda bir ifadedir. Bir örneği, ilişkisel ifade olduğu 4 ≠ 4değerlendirilirse, hangi false.

Sonuç türü olarak geçersiz

In C ve en C'den türetilmiş diller, bir olan bir işleve bir çağrı geçersiz dönüş türü tipi boşluğun geçerli bir ifadesidir. void türündeki değerler kullanılamaz, bu nedenle böyle bir ifadenin değeri her zaman atılır.

Yan etkiler ve ortadan kaldırılması

Birçok programlama dilinde bir fonksiyon ve dolayısıyla bir fonksiyon içeren bir ifadenin yan etkileri olabilir . Yan etkileri olan bir ifade normalde referans şeffaflığı özelliğine sahip değildir . Birçok dilde (örneğin C ++) olarak, ifadeler noktalı virgül (ile sona erdi olabilir ;bir ifade haline ifadeyi açmak için) ifadesi . Bu, uygulamadan ifadeyi yalnızca yan etkileri açısından değerlendirmesini ve yan etkilere neden olan bir ifade ifadesinin parçası olmadığı sürece (örneğin "x+1;") ifadenin sonucunu göz ardı etmesini ister (örneğin "y= x+1;" veya "func1(func2());").

uyarılar

Resmi bir yan etki kavramının, çalışan programın soyut durumunda bir değişiklik olduğuna dikkat edin.

Diğer bir yan etki sınıfı, önbellek belleklerine veri yükleme gibi hesaplama sisteminin somut durumundaki değişikliklerdir. Genellikle "yan etkisi olmayan" olarak tanımlanan diller, genellikle, örneğin yan kanal saldırılarında kullanılabilecek somut yan etkilere sahip olacaktır .

Ayrıca, bir ifadeyi değerlendirmek için geçen süre (belirgin başka bir yan etkisi olmasa bile), bazen bir sistemin doğru çalışması için esastır, çünkü zaman içindeki davranış değerlendirme ortamının dışından sistemin diğer bölümleri tarafından kolaylıkla görülebilir. etkileşime girer ve hatta kıyaslama testi yaparken olduğu gibi birincil etki olarak kabul edilebilir .

Soyut yan etkileri olmayan bir ifadenin , ifadenin değerlendirildiği işleme ortamı tarafından yürütme yolundan yasal olarak elimine edilip edilemeyeceği, belirli programlama dili belirtimine bağlıdır .

Ayrıca bakınız

Referanslar

Dış bağlantılar