Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Erste Hilfe

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ] [ 3 ]
000
18.01.2004, 21:25 Uhr
Matze




C++:
#include <stdio.h>

  main()
  {
    printf("This text will appear on the screen\n");  
  }




Allerdings läuft das nur, wenn ich es mit der EIngabeaufforderung starte. Wenn ich die Exe so anklicke, passiert gar nichts. Wie kann ich das Programm selbstständig ein Dos Fentser öffnen, so dass ein doppelklick reicht?
Kennt ihr eine Funktionsübersicht wie www.php.net/docs.php für PHP

Danke

Matze

P.S. Ohr seit echt ne große Hilfe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.01.2004, 21:29 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

Wenn ich die Exe so anklicke, passiert gar nichts


Vermutlich passiert schon was nur das Programm ist so schnell abgearbeitet das du nichts davon mitbekommst... (Deine Augen schaffen ja nur 24 Bilder in der Sekunde...)


probier mal am ende ein getch() einzufügen...das ist zwar plattformabhänig aber du nutzt ja windows...


C++:
#include <stdio.h>
#include <conio.h>
int main(){
printf("This text will appear on the screen\n");  
getch();
return 0;
}


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.01.2004, 21:31 Uhr
Pablo
Supertux
(Operator)



Zitat:
Matze postete

C++:
#include <stdio.h>

  main()
  {
    printf("This text will appear on the screen\n");  
  }




Allerdings läuft das nur, wenn ich es mit der EIngabeaufforderung starte. Wenn ich die Exe so anklicke, passiert gar nichts. Wie kann ich das Programm selbstständig ein Dos Fentser öffnen, so dass ein doppelklick reicht?



Das passiert, weil main verlassen wird, nachdem printf ausgeführt wird, und wenn main() fertig ist, dann beendet das Programm. Wenn ein Programm beendet wird, so wird dann auch sein Fenster von Windows entfernt, das passiert so schnell, so dass du nicht merkst, dass das Programm tatäschlich This text will appear on the screen ausgegeben hat.

Wenn du nur Winodws benutzt, könntest du folgendes versuchen:

C++:
#include <stdio.h>
#include <stdlib.h>
int main()
{
    printf("This text will appear on the screen\n");  
    system("pause"); // wartet bis der Benutzer eine Taste drückt.
    return 0;
}


oder

C++:
#include <stdio.h>
int main()
{
    printf("This text will appear on the screen\n");  
    getchar();
    return 0;
}



Zitat:

Kennt ihr eine Funktionsübersicht wie www.php.net/docs.php für PHP


http://omnibus.uni-freiburg.de/~s8juyane/C/c.html


Bearbeitung von Pablo:

Wenn du conio.h und getch() benutzt, bist du nicht mehr Systemunabhängig und dein Programm wird dann nur unter Windows compilierbar sein. Das was ich gepotst habe (die 2. Variante) ist Systemunabhängig.


--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 18.01.2004 um 21:33 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.01.2004, 21:36 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

Wenn du conio.h und getch() benutzt, bist du nicht mehr Systemunabhängig und dein Programm wird dann nur unter Windows compilierbar sein. Das was ich gepotst habe (die 2. Variante) ist Systemunabhängig


spielt in dem fall ja keine rolle weil wenn man sich wirklich ein kleines proggie schreibt packt man am ende ja kein getch ran...das ist ja nur zum testen...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
18.01.2004, 21:55 Uhr
Matze



Ok, danke, das nächste Problem:
Bisher hatte ich immer etwas, wo ich nachschauen konnte, welche Funktion ich für was benötige. Gibts so was für C?
Wie lese ich etwas ein, dass der User eingibt?
gibt es bei C strings? Muss ich für jede Funktion irgendetwas importieren? Ist das trotz dem Importieren dann eine unabhägige Exe?
Danke

Matze
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
18.01.2004, 22:06 Uhr
Pablo
Supertux
(Operator)



Zitat:
Matze postete
Ok, danke, das nächste Problem:
Bisher hatte ich immer etwas, wo ich nachschauen konnte, welche Funktion ich für was benötige. Gibts so was für C?


Ich glaube, das ist das dritte Mal: http://omnibus.uni-freiburg.de/~s8juyane/C/c.html
www.lysator.liu.se/c/rat/title.html
www.phim.unibe.ch/comp_doc/c_manual/C/cref.html

Zitat:

Wie lese ich etwas ein, dass der User eingibt?
gibt es bei C strings? Muss ich für jede Funktion irgendetwas importieren? Ist das trotz dem Importieren dann eine unabhägige Exe?
Danke

Matze


Suche nach der Funktion scanf oder fgets.

Nein, in C gibt es keine strings. Man man kann Zeichenketten behandeln, indem man ein Array von char erzeugt oder ein Pointer von char erzeugt.


C++:
char* str1="Das ist ein Pointer";
char str2[] = "Das ist ein Array";
char str3[30];
strcpy(str3, "Das ist ein anderes Array");


--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 18.01.2004 um 22:13 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
18.01.2004, 22:15 Uhr
Matze




C++:
char str3[30];

Was genau passiert hier bzw was beudetet dies?
Danke

Matze
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
18.01.2004, 22:17 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


das ist einfach ein array von chars...
soll heissen du hast soetwas wie

C++:
char eins,zwei,drei,vier....;


das praktische ist das man halt die einzelnen zeichen direkt ansprechen kann und nicht zig variable braucht...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
18.01.2004, 22:23 Uhr
Pablo
Supertux
(Operator)


char str3[30] ist die Deklaration eines Arrays. Ein Array wird auf Deutsch auch als Feld genannt. Ein Feld ist die Hintereinanderausführung von Variablen des selben Typs. Zum Beispiel char. Ein Variable von Typ char kann nur ein Zeichen aufnehmen. Wenn aber ich mehr als ein Zeichen speichern will, so muss ich mehrere Zeichen speichern. Dafür benutzt man die Arrays. Die Dimension von str3 ist 30, d.h. es gibt 30 Plätze, in denen ich meine Daten speichere.

str[0] ist das erste und str[29] ist das letzte.
C kennt die 0-terminierende Strings. Es gibt ein Zeichen names 0 (ist '\0'). Jede Zeichenkette hat dieses \0. Damit kann man wissen, dass die Zeichenkette endet.

Nehmen wir an, wir wollen Hallo speichern. Dann brauchen wir 6 Felder.

C++:
char str[6];



Man kann Funktionen wir strcpy benutzen, die ermöglichen Sachen zu kopieren, wie

C++:
strcpy(str, "Hallo");


Das kopiert in str die Zeichenkette "Hallo" und sogar mit dem \0.

Wenn ich aber ohne strcpy mache:

C++:
str[0] = 'H';
str[1] = 'a';
str[2] = 'l';
str[3] = 'l';
str[4] = 'o';
str[5] = '\0';



Nun hat str auch die Zeichenkette Hallo.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
18.01.2004, 22:24 Uhr
Matze



dann müsste ich doch folgendes sagen können:

C++:

char test;
   test[1] = "hallo";
   test[2] = "du";
   printf("%s\n",test[1]);


so verstehe ich ein array
geht aber nicht
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ] [ 3 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: