arkadaşlar cout << efe[0] yazdığımda 1 i veriyor fakat cout << efe[0]*5 ; dediğimde 5 vermesi gerekirken 245 veriyor nasıl aşabilirim bu olayı?
quote:
Orijinalden alıntı: BeMasterinCpp
char efe[25]={"123213123213"};
arkadaşlar cout << efe[0] yazdığımda 1 i veriyor fakat cout << efe[0]*5 ; dediğimde 5 vermesi gerekirken 245 veriyor nasıl aşabilirim bu olayı?
Hocam yaptığınız işlem yanlış olduğu için öyle bir değer dönüyor. siz cout << efe[0]*5 yazdığınız program char dizisinin 1. elemanı olan 1'in ANSI karşılığı olan 49 la 5 i çarparak size 245 değerini döndürüyor. 5 sonucuna ulaşabilmeniz için char dizisinden okuttuğunuz 1.elamanı integer tipine çevirdikten sonra 5 ile çarpmanız lazım.
işte tam da sormak istediğim şeyde buydu nasıl olcak o iş?string den int e nasıl çeviriceğim
quote:
Orijinalden alıntı: BeMasterinCpp
işte tam da sormak istediğim şeyde buydu nasıl olcak o iş?string den int e nasıl çeviriceğim
atoi fonsiyonunu kullanarak yapabilirsin.
arrayde sadece sayılar varsa 48 çıkarman yeter. cout << (efe[0]-48)*5;