• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

błąd funkcji: first defined here

Aruba Cloud - Virtual Private Server VPS
0 głosów
335 wizyt
pytanie zadane 16 kwietnia 2017 w C i C++ przez Krzychu234 Początkujący (350 p.)
edycja 16 kwietnia 2017 przez Krzychu234

mam taką funkcję

#include "nagl.h"

float funkcja_dodawania(float x, float y)
{
    cout<<"Podaj 1 liczbe: ";
    cin>>x;
    cout<<"Podaj 2 liczbe: ";
    cin>>y;
    return x+y;
}

i w 4 linijce wyskakuje mi error: first defined here. I nie mam pojęcia jak to naprawićfrown

a tutaj macie nagłówek:

#include <iostream>
#include <time.h>
#include <cstdlib>
#include <stdio.h>
#include <conio.h>

using namespace std;

float funkcja_dodawania(float x, float y); 

 

PS. chce zrobić tak że w pliku z funkcją było same jej ciało, a w pliku głównym jej wywołanie.

 

komentarz 16 kwietnia 2017 przez Evelek Nałogowiec (28,960 p.)
Dlaczego mieszasz nagłówki z Języka C z np. przestrzenią nazw std z języka C++?

1 odpowiedź

0 głosów
odpowiedź 16 kwietnia 2017 przez JAKUBW Nałogowiec (33,470 p.)

Użyj dyrektyw preprocesora aby załączać plik tylko raz.

#include <iostream>
#include <time.h>
#include <cstdlib>
#include <stdio.h>
#include <conio.h>
 
#ifndef FILE_1
#define FILE_1

using namespace std;
 
float funkcja_dodawania(float x, float y);

#endif

Lub pragma once gdy używasz visual studio.

komentarz 16 kwietnia 2017 przez Krzychu234 Początkujący (350 p.)

nadal mam ten błąd frown

komentarz 16 kwietnia 2017 przez 10kw10 Pasjonat (22,880 p.)
moze stworzyles dwa pliki .cpp lub .h ?

Jeden musi byc .h gdzie jest tylko naglowek funkcji, a drugi .cpp - cialo funkcji.
komentarz 16 kwietnia 2017 przez Krzychu234 Początkujący (350 p.)
mam jeden nagłówek, plik z tą funkcją, i główny plik w którym chce ją wywołać, oba są cpp
komentarz 16 kwietnia 2017 przez 10kw10 Pasjonat (22,880 p.)

plik .h powinien wygladac tak:

#ifndef NAGL_H_INCLUDED
#define NAGL_H_INCLUDED
float funkcja_dodawania(float x, float y);
#endif

 

komentarz 16 kwietnia 2017 przez JAKUBW Nałogowiec (33,470 p.)

A cpp:

#include "nazwaPliku"
#include <iostream>
 
float funkcja_dodawania(float x, float y)
{
    std::cout<<"Podaj 1 liczbe: ";
    std::cin>>x;
    std::cout<<"\nPodaj 2 liczbe: ";
    std::cin>>y;
    return x+y;
}

 

Podobne pytania

0 głosów
1 odpowiedź 374 wizyt
+1 głos
1 odpowiedź 1,120 wizyt
pytanie zadane 16 stycznia 2017 w C i C++ przez Packman2002 Początkujący (380 p.)
+1 głos
1 odpowiedź 461 wizyt
pytanie zadane 1 lutego 2021 w C# przez patryk8 Początkujący (300 p.)

93,337 zapytań

142,332 odpowiedzi

322,423 komentarzy

62,676 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...