Avatar billede qnella82 Nybegynder
09. oktober 2003 - 17:58 Der er 8 kommentarer

kan i hjælpe med at oversætte et stykke c++ kode

er der nogen herinde der kan sige mig hvad de 3 linjer nedenunder betyder og hvad de gør, jeg har prøvet at slå det op men jeg kan ikke finde noget nogen steder, håber i kan hjælpe mig

scanf("%d", &str);
clrscr(); 
getch();
Avatar billede omen Nybegynder
09. oktober 2003 - 18:06 #1
clrscr();
er Clear Screen, gætter jeg på! Altså rydde skærmen!
Avatar billede arne_v Ekspert
09. oktober 2003 - 18:23 #2
scanf("%d", &str);  // læser en integer ind i en variabel str (lyder forkert !!!!)
clrscr();  // clear screen
getch(); // læs et tegn fra keyboard uden at vise det

Den første er standard ANSI C/C++.

De to sidste er specifikke for diverse PC compilere.
Avatar billede fangel Nybegynder
09. oktober 2003 - 18:28 #3
arne -> mit C er ret begrænset, men et det ikke et integer til en referance til 'str' (&str) (selvom 'str' normalt bruges til strenge (str -> string)
Avatar billede arne_v Ekspert
09. oktober 2003 - 18:30 #4
%d betyder tal.

Og argumentet formodes at være adressen på en int.

str kan sagtens være en int variabel.

Men det ligner altså lidt en bøf.
Avatar billede fangel Nybegynder
09. oktober 2003 - 18:33 #5
normalt ville man ikke kalde et tal for 'str', men man kan slf sagtens! - lydder bare sjovt

og at det tildeles adressen for 'str', og ikke til 'str' - men dette ville slf være normalt hvis det var fra en funktion!

Morten
Avatar billede arne_v Ekspert
09. oktober 2003 - 19:36 #6
Et lille eksempel:

#include <stdio.h>

void test1()
{
  int str;
  sscanf("65","%d",&str);
  printf("%d\n",str);
  return;
}

void test2()
{
  char str[33];
  sscanf("65","%s",str);
  printf("%s\n",str);
  return;
}

void test3()
{
  char str[33];
  sscanf("65","%d",str);
  printf("%s\n",str);
  return;
  return;
}

void test4()
{
  char str[33];
  sscanf("65","%d",&str);
  printf("%s\n",str);
  return;
  return;
}

int main()
{
  test1();
  test2();
  test3();
  test4();
  return 0;
}

output:

65
65
A
A
Avatar billede krukken Juniormester
16. oktober 2003 - 09:41 #7
Ja, det er ved bare en forspørgsel på de tre funktioner.

scanf("%d", &str): http://www.cplusplus.com/ref/cstdio/scanf.html
clrscr(): rydder skærmen
getch() indlæser en tegn fra tastatur. Vær opmærksom på at du nok ikke skal bruge det til indtastning af data, da det ikke læser på tastaturbufferen, men faktisk bruger det indtastede. Hvis du vil indtaste almindelige data, skal duy nok bruge standard inputtet cin <<.
Avatar billede arne_v Ekspert
25. oktober 2003 - 14:30 #8
Tid at lukke spørgsmålet ?
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