Şimdi Ara

C++ fonksiyon kullanımı hk.

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
15
Cevap
0
Favori
1.027
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • arkadaşlar c++'a başladım fakat bir sorun var.

    bir fonksiyona bir string verip return ile çıktıyı alıp main fonksiyonunda bu fonksiyondan dönen string'i printf ile basmak istiyorum 2 gündür uğraşıyorum gram yol katedemedim.



  • Entera bas

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Bak şimdi güzel kardeşim javayi alıyorsun tamammi basıyorsun scripti o kod sisicek sonra istediğini yaparsin


    Konu dışına yazilirmi bu

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • #include <stdio.h> 
    #include <string>

    int main(){
    std::string arguman;
    printf("%s \n",fonk(arguman).c_str());
    }

    std::string fonk(std::string gelen){
    std::string giden;

    // burda ne yapacaksan yap. giden e at.


    return giden;
    }



    < Bu mesaj bu kişi tarafından değiştirildi ÖmerI -- 30 Eylül 2016; 20:19:46 >
  • quote:

    Orijinalden alıntı: aslan_emir26

    Bak şimdi güzel kardeşim javayi alıyorsun tamammi basıyorsun scripti o kod sisicek sonra istediğini yaparsin


    Konu dışına yazilirmi bu


    haklısın hocam da en işlek yer burası. gelir bir tane anlayanı diye düşünmüştüm
  • #include <stdio.h> 
    #include <iostream>
    #include <string>

    using namespace std;

    string functionName(string foo)
    {
    return foo;
    }

    int main()
    {
    string foo = "Selam";
    string foo2 = functionName( foo );

    printf("%s", foo2.c_str());
    }


    Amaçsız bir fonksiyon oldu ama fonksiyonun içinde stringe bir şeyler uygulayabilirsin.

    Edit: using namespace ekledim.



    < Bu mesaj bu kişi tarafından değiştirildi Viper13 -- 30 Eylül 2016; 20:22:57 >
  •  
    char * stringdondur(char *);

    int main(){
    printf("%s", stringdondur("Bu bir yazı xd"));
    return 0;
    }

    char * stringdondur(char *string){
    return string;
    }


    C ile yazdım ve uzun zamandır C kullanmıyorum pointer zıkkımlarını flaan unutmuş olabilirim.
  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
  • quote:

    Orijinalden alıntı: ÖmerI

    #include <stdio.h> 
    #include <string>

    int main(){
    std::string arguman;
    printf("%s \n",fonk(arguman).c_str());
    }

    std::string fonk(std::string gelen){
    std::string giden;

    // burda ne yapacaksan yap. giden e at.


    return giden;
    }


    std::string'in olayı nedir hocam? standart string kullansak çalışmaz mıydı?
  • quote:

    Orijinalden alıntı: Viper13

    #include <stdio.h> 
    #include <iostream>
    #include <string>

    using namespace std;

    string functionName(string foo)
    {
    return foo;
    }

    int main()
    {
    string foo = "Selam";
    string foo2 = functionName( foo );

    printf("%s", foo2.c_str());
    }


    Amaçsız bir fonksiyon oldu ama fonksiyonun içinde stringe bir şeyler uygulayabilirsin.

    Edit: using namespace ekledim.

    eyvallah hocam çalıştı fakat bir kaç sorum olacak. şuanki haliyle iostream kütüphanesini eklememiz gerekir mi? "printf("%s", foo2.c_str());" bu koddaki "c_str()"nin olayı nedir?
  • quote:

    Orijinalden alıntı: mysterious79

    quote:

    Orijinalden alıntı: ÖmerI

    #include <stdio.h> 
    #include <string>

    int main(){
    std::string arguman;
    printf("%s \n",fonk(arguman).c_str());
    }

    std::string fonk(std::string gelen){
    std::string giden;

    // burda ne yapacaksan yap. giden e at.


    return giden;
    }


    std::string'in olayı nedir hocam? standart string kullansak çalışmaz mıydı?

    kodun basina

    using namespace std

    eklersen o std:: leri eklemene gerek kalmaz. std::string de string de ayni sey farki yok.
  • fonksiyon tanımlamalarını return'a göre mi yapıyoruz? yani return değeri bir rakam ise fonksiyon'u int, eğer ki return yoksa void, return bir string ise de string olarak mı tanımlayacağız fonksiyonu?



    < Bu mesaj bu kişi tarafından değiştirildi mysterious79 -- 30 Eylül 2016; 20:35:05 >
  • quote:

    Orijinalden alıntı: A.S.I.

     
    char * stringdondur(char *);

    int main(){
    printf("%s", stringdondur("Bu bir yazı xd"));
    return 0;
    }

    char * stringdondur(char *string){
    return string;
    }


    C ile yazdım ve uzun zamandır C kullanmıyorum pointer zıkkımlarını flaan unutmuş olabilirim.

    hocam bu fonksiyonun başına yazdığınız "char *" bunu neye göre yazıyoruz başlık altında bunların hepsini bir arada bulabileceğim bir kaynak önerebilir misiniz? tanımlamalarda sıkıntım var.
  • quote:

    Orijinalden alıntı: mysterious79

    fonksiyon tanımlamalarını return'a göre mi yapıyoruz? yani return değeri bir rakam ise fonksiyon'u int, eğer ki return yoksa void, return bir string ise de string olarak mı tanımlayacağız fonksiyonu?

    Aynen. C de string diye bir tip olmadığı için ben char pointer olarak geri dönüş yaptım.
  • mysterious79 M kullanıcısına yanıt
    iostream'e gerek yok hocam ben öylesine ekledim. c_str()'in olayıda şudur:

    C dilindeki stringler ile C++'taki stringler aynı değil. c_str() metodu/fonksiyonu string class'ının içinde olan bir metod ve görevi C++ stringini C stringine çevirmek. printf fonksiyonu bir C fonksiyonu. Bu yüzden C++ stringini bir C fonksiyonunda kullanmak için ilk önce C stringine çevirmemiz lazım. Biraz karışık anlattım ama umarım anlayabilirsin.

    Edit: C dilinde aslında string diye bir şey yok. Karakterler ile dizi oluşturarak string elde ediliyor. Örn:

    char merhaba[8] = {'M', 'e', 'r', 'h', 'a', 'b', 'a', '\0'};

    Sondaki karakter stringin bittiğini gösterir. Konulması zorunlu.



    < Bu mesaj bu kişi tarafından değiştirildi Viper13 -- 30 Eylül 2016; 21:00:38 >
  • quote:

    Orijinalden alıntı: mysterious79

    fonksiyon tanımlamalarını return'a göre mi yapıyoruz? yani return değeri bir rakam ise fonksiyon'u int, eğer ki return yoksa void, return bir string ise de string olarak mı tanımlayacağız fonksiyonu?

    Return değeri neyse odur hocam. Charsa char, int ise int vs vs..
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.