Avatar billede tast Nybegynder
29. august 1999 - 22:38 Der er 5 kommentarer og
1 løsning

char temp [80];

Jeg er ved at læse en bog, og de har i følgende program sat en linie som hedder "char temp [80];", hvad gør den linie? for mig ser det ud som om at linien ikke ummidelbart gør noget!!!!!

Tast

Program:

# include <iostream>
using namespace std;

char name[10][80];
char phone[10][20];
float hours[10];
float wage[10];

int menu();
void enter(),report();

int main(){

    int choice;

    do{
        choice=menu();
        switch(choice){
        case 0: break;
        case 1: enter();
            break;
        case 2: report();
            break;
        default: cout<<"Try again.\n\n";
        }
    }while(choice !=0);

    return 0;
}

int menu(){

    int choice;

    cout <<"0. Quit\n1. Enter information\n2. Report information\n\nVaelg en: ";
    cin>>choice;

    return choice;
}

void enter(){

    int i;
    char temp [80];//******Hvad gør denne linie?******

    for (i=0; i<1; i++){
        cout<<"Enter last name: ";
        cin >> name[i];
        cout<<"Enter phone number: ";
        cin >> phone[i];
        cout<<"Enter number of hours worked: ";
        cin >> hours[i];
        cout<<"Enter wage: ";
        cin >> wage[i];
        cout<<"\n";
    }
}

void report(){

    int i;
cout<<"\n";
    for(i=0; i<1; i++){
        cout<<name [i]<<' '<<phone[i]<<"\n";
        cout<<"Pay for the week: "<<wage[i]*hours[i];
        cout <<"\n";
    }
    cout<<"\n\n";
}
Avatar billede lrj Nybegynder
30. august 1999 - 00:13 #1
Så vidt jeg kan se er det en variabel som kun eksisterer i metoden enter(). Og da den ikke bruges til noget, er det nok et efterladenskab fra en tidligere version af programmet.

Gør det nogen forskel hvis du fjerner den? Det skulle det helst ikke, da variablen slet ikke bliver brugt...
Avatar billede skovlunde Nybegynder
30. august 1999 - 03:41 #2
Fjern lortet....
Avatar billede snowball Novice
30. august 1999 - 09:17 #3
Jeg vil mene at linien char temp [80] opretter et array med plads til 80 tegn i hukommelsen, men jeg kan ikke lige se meningen med det i det der program.

Har du prøvet at fjerne den (eller lige skrive // foran) ???

Snowball
Avatar billede soepro Nybegynder
30. august 1999 - 09:25 #4
Linien gør noget: den opretter en tekst variabel med længden 80 (dvs. plads til 79 tegn), men den er UDEN BETYDNING, for rutinen 'enter' bruger den ikke.

Du kan -som flere også allerede har pointeret- uden problemer slette den.
Avatar billede tast Nybegynder
30. august 1999 - 16:52 #5
Ja, jeg vil også mene at linien ikke er til noget,- men da den stod i bogen og da jeg er ganske ny i c++, så kunne det jo være at der var en mening.

Det er sku´ da rart at vide at man har forstået bare lidt, og har kunnet se en fejl,- HALLELUJA!!!!

Tast
Avatar billede snowball Novice
30. august 1999 - 19:36 #6
Jaaa, man skal ikke altid stole 100% på det de skriver i bøgerne. Jeg har også selv fundet en hel del fejl i nogle C og C++ bøger ;-))

Snowball
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