C Programlama-Yapıya Karakter Nasıl Yazılır ?
-
r+ şeklinde okuyup yazmak için bir dosayı açtım o dosyada boş bir yere ad soyad girmek istiyorum ama sadece ilk kelimeyi alıyor mesela ali kaya diyorum aliyi atıyor içine bunun doğru şekli nedir ??
YAPİ BU: struct ogrenci_Bilgisi { int ogr_no; char adsoyad[31]; int sinif; int al_kredi; float ortalama; }; typedef struct ogrenci_Bilgisi Bilgi; BU ŞEKİLDE İÇİNE ATMAYA ÇALIŞTIM: printf("\n Adini ve Soyadini Giriniz: "); scanf("%s", yeni_ogr_bilgisi.adsoyad); -
ali kaya yazarken arada bıraktıgın boşlukta scanf okumayı kesiyo
scanf yerine gets kullanmayı deneyebilirsin
-
splintercell bunu yazdı
ali kaya yazarken arada bıraktıgın boşlukta scanf okumayı kesiyo
scanf yerine gets kullanmayı deneyebilirsin
banada öyle geliyor ama, printf den sonra cart diye çıkıyor veri girişini beklemiyor.
-
zeybekustasi bunu yazdısplintercell bunu yazdı
ali kaya yazarken arada bıraktıgın boşlukta scanf okumayı kesiyo
scanf yerine gets kullanmayı deneyebilirsin
banada öyle geliyor ama, printf den sonra cart diye çıkıyor veri girişini beklemiyor.
gets ile denedigin halini koyabilirsen kodun iyi olur
-
printf("\n Adini ve Soyadini Giriniz: "); gets(yeni_ogr_bilgisi.adsoyad); fseek(aptr,(ogr_no-100)*sizeof(Bilgi),SEEK_SET); fwrite(¥i_ogr_bilgisi,sizeof(Bilgi),1,aptr); -
zeybekustasi bunu yazdı
printf("\n Adini ve Soyadini Giriniz: "); gets(yeni_ogr_bilgisi.adsoyad); fseek(aptr,(ogr_no-100)*sizeof(Bilgi),SEEK_SET); fwrite(¥i_ogr_bilgisi,sizeof(Bilgi),1,aptr);anladıgım kadarıyla burda gets'i beklemeden direk alt satırdan devam ediyo diyosun
ben de anlamadım
en azından uplayalım bilen biri çıkar:)
-
splintercell bunu yazdızeybekustasi bunu yazdı
printf("\n Adini ve Soyadini Giriniz: "); gets(yeni_ogr_bilgisi.adsoyad); fseek(aptr,(ogr_no-100)*sizeof(Bilgi),SEEK_SET); fwrite(¥i_ogr_bilgisi,sizeof(Bilgi),1,aptr);anladıgım kadarıyla burda gets'i beklemeden direk alt satırdan devam ediyo diyosun
ben de anlamadım
en azından uplayalım bilen biri çıkar:)
bir kere daha up sanırım yapıya char atamada bir sıkıntı var...
-
stdin dosyasinda '\n' karakteri kalmistir ve gets fonksiyonu da bu karakteri gordugu zaman geri doner.
stdin ideki cop veriyi cekmen ve oyle gets ' e girmen gerek.
eger kodun ust taraflarinda bi yerinde scanf ' le okuma yaptiysan buyuk olasilikla bundan kaynaklaniyodur.stdin ' i tazelemekle alakali daha once burda kod paylasildi diye hatirliyorum, kaldi ki paylasilmamis olsa bile birazcik dusunup sende bi fflush_stdin
isimli( yada ismine ne dersen artik :) ) fonksiyon yazabilirsin
