SORU
12 Aralık 2014, Cuma


C Dize Hazır Karşılaştırılması

C acemi (sadece oldschool c) ediyorum. Oğlum bu ile yardım istedi ve bunu açıklamak mümkün değil. Eğer bana sormuş olsaydı "nasıl dize karşılaştırma yapabilirim" onu strcmp kullanmak söylerdim(), ama o bana kafa karıştırıcı nedir diye bir şey yok. Sordu:

int main() 
{ 
  cout << ("A"< "Z");
}

yazdırır 1

int main() 
{ 
  cout << ("Z"< "A");
}

ayrıca 1, Ancak yazdırma

int main() 
{ 
  cout << ("Z"< "A");
  cout << ("A"< "Z");
}

sonra 10 baskı. Ayrı ayrı her ikisi de aynı ifadeleri 1, ama farklı bir cevap alıyorum peşpeşe idam yazdırma?

CEVAP
12 Aralık 2014, Cuma


Bellek adresleri mukayese ediyorsunuz. Derleyici onları bulduğu sırada bellekte dize hazır yerler görünüşe göre, ilk kez bu kadar "küçük" saniyeden.

İlk parçasında "A" ve "ikinci" ve "daha az." Z ilk gördüğü günden beri "İkinci ilk, "Z" daha az. "Z görüyor, çünkü Son parçasında, zaten harfleri "A" ve "Z ikinci komut gelip çattığında" yerleştirilmiş. Bir vardır

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • girleffect

    girleffect

    20 Mayıs 2008
  • Orson Wang

    Orson Wang

    28 EKİM 2006
  • SaMmM123

    SaMmM123

    3 Mayıs 2006