Gå til innhold

Hva er galt med denne koden?


Anbefalte innlegg

Hva er galtmed denne koden?

Jeg er ganske ny med c++, men den ser vedlig riktig ut...

 

/* Replace "dll.h" with the name of your header */
#include "dll.h"
#include <windows.h>
#include <cmath>

export double add(double number1, double number2, double answer)
{
  return(double) answer = sqrt(number1*number1+number2*number2);
}

 

Error:

 G:\gm\gm7\Examples\HypotenuseDLL\hypotenuse.cpp In function `double add(double, double, double)': 
8 G:\gm\gm7\Examples\HypotenuseDLL\hypotenuse.cpp non-lvalue in assignment 
G:\gm\gm7\Examples\HypotenuseDLL\Makefile.win [Build Error]  [hypotenuse.o] Error 1

 

Og et sidespørsmål...

Står sqrt for kvadratrot?

Endret av kake_fisk
Lenke til kommentar
Videoannonse
Annonse

Hvorfor sender du med answer når du gir den verdi i selve koden? Du kan bare gjøre

 

double add(double number1, double number2) {
	  return sqrt(number1*number1+number2*number2);
}

 

Det å sende med answer er unødvendig, da du gir den en helt ny verdi i funksjonen. Nå er jeg ganske ny med C++, så vet ikke hvorfor du hadde export double add? sqrt står for kvadratrot ja. Du trenger heller ikke spesifisere at den skal returnere en double da alle variablene er double. Ellers går det vel heller ikke med(?)

 

return(double) answer = sqrt(number1*number1+number2*number2);

 

Siden du både returnerer og gir en variabel en verdi samtidig. Hvis det går er det uansett helt unødvendig siden du ikke bruker den mer og uansett returnerer den.

Lenke til kommentar
Hva er galtmed denne koden?

Jeg er ganske ny med c++, men den ser vedlig riktig ut...

 

Vel jeg vet ikke helt hva du prøver på, men sqrt returnerer double så det er ikke noe poeng med casting, men det er ikke problemet ditt.

 

return er den verdien du skal returnere, men det er ingen variabel som det er i f. eks. delphi.

Du kan derfor ikke gi return en verdi men du kan si at den skal returnere en verdi som f. eks. resultatet fra sqrt.

Hvis du fjerner " answer = " så vil det nok fungere.

export kan du nok også få problemer med så prøv og fjern den også hvis du får mer problemer.

 

Og et sidespørsmål...

Står sqrt for kvadratrot?

 

stemmer det.

www.cppreference.com finner du raskt ut slike ting :)

 

lykke til

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...