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

  • DetroitBORG

    DetroitBORG

    29 Temmuz 2008
  • Engadget

    Engadget

    18 EYLÜL 2006
  • Mr. H

    Mr. H

    1 Temmuz 2012