Funktionen deklarieren in C++



  • Hallo

    Ich hab versucht eine funktion zu deklarieren, aber ich bekomme immer eine Fehler meldung und weiß nicht warum.
    Kann mir jemand helfen???

    error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.

    #include "stdafx.h"
    #include "iostream"
    
    using namespace std;
    
    funk (int *a,int *b){
    
    int temp =*a;
    *a=*b;
    *b=temp;
    }
    int main(int argc, char* argv[])
    {
    int a=0;
    int b=0;
    	cout << "geben sie zwei zahlen ein \n";
    	cin >> a >> b;
    
    	cout <<"a=" <<a << "\n";
    	cout <<"b=" <<b << "\n\n";
    
    funk (&a,&b);
    	cout <<"a=" <<a << "\n";
    	cout <<"b=" <<b << "\n";
    	return 0;
    }
    


  • void func(int* a, int* b);



  • deine formatierung ist nebenbei auch bissel komisch...

    #include <iostream>
    
    using namespace std;
    
    void funk (int *a,int *b){
        int temp =*a;
        *a=*b;
        *b=temp;
    }
    
    int main(int argc, char* argv[])
    {
        int a=0;
        int b=0;
        cout << "geben sie zwei zahlen ein \n";
        cin >> a >> b;
    
        cout <<"a=" <<a << "\n";
        cout <<"b=" <<b << "\n\n";
    
        funk (&a,&b);
        cout <<"a=" <<a << "\n";
        cout <<"b=" <<b << "\n";
    
        return 0;
    }
    


  • hmm machs direkt mit template ^^

    #include <iostream>
    
    template<typename T>
    void swap(T& a, T& b)
    {
        T tmp = a;
        a = b;
        b = tmp;
    }
    
    int main()
    {
        int a=0;
        int b=0;
        std::cout << "Geben Sie zwei zahlen ein: " << std::flush;
        std::cin >> a >> b;
    
        std::cout << "a= " << a << std::endl;
        std::cout << "b= " << b << std::endl";
        std::cout << "Swap!" << std::endl;
        swap(a, b);
        std::cout << "a= " << a << std::endl;
        std::cout << "b= " << b << std::endl;
    }
    

    ?


Anmelden zum Antworten