Avatar billede gozo123 Nybegynder
20. maj 2007 - 20:18 Der er 7 kommentarer og
1 løsning

Projekter i DEV-C++

Hej
Nybegynder igang med at oprette projekt i DEV-C++. Kan ikke få det til at virke.
Har tre filer. Main.c, funk.c og test.h. Main skal kalde  funktionen udskriv med ét argument. Udskriv skal så udskriv argumentet og en global variabel defineret i test.h

Det virker ikke. Får at vide at jeg har defineret b flere gange?
Hvis jeg ikke skrive #include "test.h", i alle c-filer får jeg at vide at udskriv ikke er defineret?

Nogen der kan hjælpe?

In main.c
#include "test.h"

int main(void)
{
  udskriv(3);
  system("PAUSE");   
  return 0;
}

In funk.c
#include "test.h"

void udskriv(int a) {
    printf("%d %d", a, b);
    }

In test.h
#include "test.h"

void udskriv(int a) {
    printf("%d %d", a, b);
    }
Avatar billede gozo123 Nybegynder
20. maj 2007 - 20:20 #1
Hov. I test.h ligger:

#include <stdio.h>
#include <stdlib.h>
int b=10;
void udskriv(int a);
Avatar billede arne_v Ekspert
20. maj 2007 - 20:25 #2
test.h:

int b=10;

->

extern int b;
Avatar billede arne_v Ekspert
20. maj 2007 - 20:26 #3
tilføj:

int b=10;

i main.c
Avatar billede gozo123 Nybegynder
20. maj 2007 - 20:33 #4
Men hvis jeg gerne vil holde mine globale variable i h filen. Har prøvet begge dele. Virker stadig ikke?
Avatar billede gozo123 Nybegynder
20. maj 2007 - 20:37 #5
Ahh skulle gøre begge ting på en gang :)
Vil du forklare mig, hvad det er jeg gør. Er sgu ikke helt med.
Avatar billede arne_v Ekspert
20. maj 2007 - 21:01 #6
extern betyder "jeg findes et andet sted"

ikke extern betyder "jeg findes her"

du have en b i både main og func

extern fixer det problem
Avatar billede gozo123 Nybegynder
21. maj 2007 - 07:58 #7
Mange tak for din hjælp.
Smider du et svar?
Avatar billede arne_v Ekspert
21. maj 2007 - 15:28 #8
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester