Stringler Hakkında Bir Problem
-
sorum şu:
#include "stdio.h"
char katar1[20];
char katar2[20];
main(){
printf("birinci katari ver");
gets(katar1);
printf("2.katari ver);
gets(katar2);
}
bu kod niye çalışmıyor. standart c lib. bu fonksiyonları çalıştırıyor diye bilyordum. ama sadece 1 gets kullanirsam sorun olmuyor ama peşpeşe veya bir programda veya fonksiyonda 2 tane kullanirsam doğru çalışmıyor nedenini bilen ve yardımcı olabilecek olan var mı? şimdiden teşekkürler -
printf("2.katari ver); ==> printf ("2. katari ver"); olmalı.
Bir de :
#include "stdio.h" ==> #include <stdio.h> olmalı.
Hocam bir de böyle dene bakalım..
-
onla ilgisi yok hocam o hataları buraya yazarken yanlışlıkla yapmışım. başka bir fikriniz var mı?
-
#include <stdio.h>
int main () {
char katar1[20];
char katar2[20];
printf ("Birinci katari giriniz : ");
fgets (katar1,20,stdin);
printf ("Ikinci katari giriniz : ");
fgets (katar2,20,stdin);
getch();
}Bi de böyle dene o zaman :)
-
zirzop_ce bunu yazdı:
-----------------------------sorum şu:
#include "stdio.h"
char katar1[20];
char katar2[20];
main(){
printf("birinci katari ver");
gets(katar1);
printf("2.katari ver);
gets(katar2);
}
bu kod niye çalışmıyor. standart c lib. bu fonksiyonları çalıştırıyor diye bilyordum. ama sadece 1 gets kullanirsam sorun olmuyor ama peşpeşe veya bir programda veya fonksiyonda 2 tane kullanirsam doğru çalışmıyor nedenini bilen ve yardımcı olabilecek olan var mı? şimdiden teşekkürler
-----------------------------bunu dene istersen kardesim bu calisti bende..
#include <stdio.h>
char katar1[20];
char katar2[20];
int main()
{
printf("birinci katari ver");
gets(katar1);
printf("2.katari ver");
gets(katar2);
system("PAUSE");
return 0;
}2. printf in sondaki " i yoktu sende belki ondan olabilir. Sonra, #include "stdio.h" yapmissin bu cogunlukla kendi headerini yazdiginda prgoramla ayni dizinde oldugunda bu sekilde include ediyosun.fakat stdio.h include kutuphanelerinde oldugundan <stdio.h> yapman gerekiyor..
koydugum system("PAUSE"); ise programin hemen kapanmayip ekranda durmasi icin.Dev C++ kullandigim icin koydum visual stduio larda gerek yok galiba.
return 0; ise programi check edip isletim sistemine birakiyor donduruyor koyman tavsiye edilir..neyse birde boyle dene calismassa yine bakariz.
-
#include "stdio.h"
char katar1[20];
char katar2[20];
int main(){
printf("birinci katari ver");
gets(katar1);
printf("2.katari ver");
gets(katar2);
printf("%s \n",katar1);
printf("%s",katar2);return 0;
}
hatalarını düzelttim, kod bal gibide çalışıyor.
-
evet bu çalıştı çok sağolun. ama 2. sorum da var:D
soru şu:
#include<stdio.h>
#include<string.h>
struct sss{
char a[20];
char b[20];
}
main(){
int sayi;
struct sss s;
printf("bir sayi gir");
scanf("%d",&sayi);
switch(sayi){
case 0:
printf("1.katariver");
gets(s.b);
printf("2.katar");
gets(s.a);
case 1:
printf("1.katariver");
gets(s.b);
printf("2.katar");
gets(s.a);(ne oldugu onemli degil).
.
.
devamı da var ama yazmıyorum. problem su. eger en basta bir integer sayi okumazsam gzel güzel sıra ile printfleri yazıp sora da gets ile alıyor ancak. başında bir int sayi okuyunca aynen şöyle oluyor:
1.katar2.katar yani her 2 printfi bir anda yazıyor aradaki getsleri atlıyor ve normal olarak program hata veriyor acaba kütüphaneerde mi hata var anlayamadım ya.
biraz uzun ama cevaplayın lütfen
