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

  • GoProTutorials

    GoProTutoria

    18 NİSAN 2011
  • Howard Pinsky

    Howard Pinsk

    6 AĞUSTOS 2006
  • JonnyEthco

    JonnyEthco

    5 EKİM 2006