İlk başladığımda aynı mantığı ben de düşünmüştüm. ![]() Her sayı için ayrı ayrı "< 50" yapman gerek. Aslında notları bir dizi içinde tutup döngüyle içinde dönsen daha az uğraşırsın. 50 tane ders olsa hepsini tek tek mi yazacaksın? int[] notlar = new int[] {not1, not2, not3, ..., notN}; ![]() |
İnternette hesap makinesi yapımını dinlemiştim sonra böyle bir şey aklıma geldi zaten derslerin daha başındayım. İf-else daha yeni bitti. Bir de koddan bişe anlamadım ama reserved. Bir iki ay sonra tekrar döncem bu konuya ve çözcem o kodu! Bu arada çok teşekkürler. Foruma yeni kaydolmama rağmen ilk izlenimler müthiş. Burdan öğreneceğim çok şey olcak! ![]() |
Konu açacaktım ama sorun oluştu diyor açtırmadı, ben de buraya yazayım. C++ Socket Programlama | Binary Image Aktarımındaki Byte Farkı Client resim gönderecek, server resimleri alıp kaydedecek şekilde program yazdım. Resmi okuduktan sonra binary şekilde gönderiyorum, boyutu için de ayrı olarak imageSize gönderiyorum. Receiver recv fonksiyonu ile alıp kaydettiğinde, dosya bozuk üretiliyor. Notepad ile açıp farklara baktım 8 tane "/00" karakteri var receiver tarafındaki image da. bytes_sent ile bytes_received değikenleri arasında da 8 byte fark çıkıyor. Bu farkın sebebi nedir? Nereden geliyor bu karakterler? Client Side: Buffer'ı yazmaya 8'den başlatınca düzgün şekilde image üretiyor. Bu 8 byte nereden geliyor acaba? |
Arkadaslar belki soruldu ama bulamadim genel olarak google dada aradim ve cogu ingilizce kitap oneriyor ingilizce almak istemiyorum cunku tam kavramak istiyorum. bu yuzden Turk yazarlarimizin kitaplarina yoneliyorum (hollandaca kitaplarda var ama cogu ceviri ozgun degil) asil sorum su ben web programciligi yapiyorum ama bazen masa ustu uygulamalari gelistirmem gerekiyor veri tabani felan. PHP den gelmekteyim belirtmek istiyorum isin asli eklemek istiyorum c++ ilk giris yapmayi denedigimde hic yabancilik cekmedim ve c++ ayri bi cekici geldi ve c++ sinirlamasi olmadan kodlamasi guzel oluyor ( memory hacking, fps oyunlarinda hack yapmasi cok hos oluyor :D ) uzatmicam fazla arkadaslar vaktinizi calmak istemiyorum almak istedigim kitaplar sirasi ile sunlar; Her yonuyle c c++ - Muhammed Mastar isimli kisinin kitapi ( videolari internettede mevcut) her yonuyle c# bu kitaplari kullanan arakdaslarin yorumlarini almak isterim ve hatta uygun bir yol veya kitap onerisi var ise acigimdir simdiden hepinize tesekkurler saygilarimla Yasin Kucuk |
hocam galiba 1byte in 8 bit e esit olmasindan dolayi benimde aklima cok takiliyor bu goruyorum ornek uygulamalarda genellik le 8. http://answers.yahoo.com/question/index?qid=1006050807364 |
Yok hocam onunla bir alakası olduğunu sanmıyorum. Character vector içinde tutuyorum ben binary kodu. 1 char = 1 byte , 8 tane o "/00" karakteri olduğundan 8 byte ekstra geliyor. |
#include<stdio.h> int main( void ) { int i = 0; for( i; i < 12; i++ ) { if( ( i++ + 1 ) == 5 ) printf( "%d\n",i ); else if( i % 2 == 0 ) break; else if( i % 3 == 0) continue; else printf("%d\n", i ); } return 0; } Burada döngü neden ekrana 1-5-7-11 basıyor anlayamadım,izah edebilir misiniz? |
C++ için en azından int* ptr; int * ptr; int *ptr; bunlardan hangisi doğrudur? yani hiç biri derleme de hata vermiyor fakat yazım kuralları ve okunabilirlik açısından hangisi daha çok kullanılır? |
Üçüde doğru. Ben int *ptr; olanı kullanıyorum. |
Üçü de doğru. int* p1,p2; -> ikisi de pointer int *p1,p2; -> sadece p1 pointer |
İkisi de pointer değildir. tür bilgisi int dir, *p1 deklaratördür. * tür bilgisine dahil olmadığı için p2 int türdendir. p1 in türü int *'dır. |
Yanlış hatırlamışım, iyi ki düzeltmişsin. ![]() |
peki bir sorum daha var, her array bi pointer. yani array[2] yerine *array+2 diyebiliriz. peki iki boyutlu yada diğer çok boyutlu diziler de nasıl oluyor onu anlamadım? |
*array + 2 dersen yanlış olur. Bu ilk elemana 2 ekler. Eğer ikinci indise ulaşmak istiyorsan parantez kullanmalısın. *(array + 2) bu şekilde olmalı. 2 Boyutlu diziler içinde aşağıdaki örnek işine yarar.
|
Aşağıdaki değişken tanımlardan hangisi C dilinde hata verir ? a)char w_w; b)float a1b2c3; c)int print; d)int switch; e)char x12345; |
c++
for(i=0;i<=a[ i ][ 0 ];i++){ cout << "\n"; for(j=0;j<=a[j];j++) şu kısmı tam anlayamadım. i bir sayı, dizinin içindeki de harf. nasıl küçük eşit sağlayabiliyoruz? i<=a[0] hangi durumda sağlanıyor, a[0]ın tam sayı değeri mi var? bir de j<=a[j] diyor. 2 boyutlu bir dizi değil mi, neden tek bölüm var? a[1] deseydi neyi belirtmiş olurdu |
Aşağıdaki C programının çıktısı ne olur? main() { int dizi[15]={3, 2, 8, -4, 6}; int i, s=0; for(i=1;i<15;i++) { if (dizi >= 0) s ++; } printf("%d",s); getche(); } |
Arrayın tanımlamadığın değerleri 0 oluyordu galiba ona göre bakarsak s=13 oluyor dizi[1] den başladığından ilk elemanı almıyoruz, toplamda sadece -4 artırmıyor. |
aynen hocam cevap 13 ama biraz daha açıklayacı yazar mısnız ilk defa görüyorum da bu dersi pek anlayamadım o yüzden |
< Resime gitmek için tıklayın >" target="_blank">< Resime gitmek için tıklayın >
Bu mesaja 1 cevap geldi. Cevapları Gizle