Variablen und Funktionen
-
zwischen 10 und 20=zufallszahl.
int i=(std::rand()%10)+10;aber kauf dir bitte bitte ein c++ buch, wenn du sogar ein einer simplen while schleife scheiterst, hat das alles noch nich wirklich viel sinn.
-
Ja, das stimmt schon eigentlich habe ich nicht genug Erfahrung für so ein Minispiel. Aber, ich finde leider nur anfänger Tutorials und von denen hab ich schon 2 durch, also hab ich schon Grundwissen, und jetzt weiß ich nicht wie ich weitermachen soll. Es gibt leider keine Tutorials für "etwas" fortgeschrittenere. Wie habt ihr das denn gemacht als ihr euer erstes anfänger Tut durchgelsen habt?
-
ich hab mir das Buch "C++ Lernen und professionell anwenden" gekauft.
war sein geld wert.
-
Hmmm, bekomme den fehler das "std" keine Klasse ist und "rand" ein nichtdeklarieter bezeichner.
-
es gibt 2 möglichkeiten: entweder du includest keinen header oder die alten.
std::rand() ist in stdlib.h definiert,siehe deine compiler hilfe^^
-
Hab jetzt einfach mal den versuch gemacht:
#include <iostream.h> void main() { int i=(std::rand)()%10+10; cout<<i<<endl; }Und da kamen die fehler. Muss ich vorher noch eine Klasse entwerfen um die zufallszahlen zu benutzen?
-
alte header-.-
wir sind hier im c++ forum, da schreibt man "#include <iostream>", keine .h endung, das is mist
-
So, hab stdlib.h includet, jetzt ist rand schon mal kein undeklarierter bezeichner mehr. Jetzt bleibt nur noch das Prob mit std.
-
Hi,
du musst die cstdlib inkludieren. Dann ist es im std-Namespace.
-
Ja, hab schon mal gelsen das .h veraltet ist, aber wenn ich das weglasse bekomme ich Fehler...?
-
Hi,
das liegt daran, dass die Standard-Klassen (z.b. cout) dann im std-Namespace deklariert sind. Du musst dann anstelle von
cout
std::cout schreiben.
-
hab auch cstdlib da hab ich immer noch den Fehler. Aber wenn ich cstdlib.h includiere, hab ich eine Fehler das die include Datei nicht geöffnet werden kann.
-
#include <iostream> int main(int argc, char* argv[]) { std::randomize(); int i=(std::rand()%10)+10; std::cout<<i; return 0; }so einfach ist das.
randomize setzt den "seed" dh erst durch ihn arbeitet std::rand() korrekt(sonst returned er immer 0, dummes design)
-
aaaahhhh
Überall Fehler über Fehler!!! Kann es sein das mein Compiler zu alt ist? Wo bekomm ich eine aktuellen?
-
welchen hast du?
-
VC 98 müsste der heißen. Kenne mich da nicht so aus.
-
Mitlerweile sieht es mein code so aus *g*:
#include <iostream.h> #include <cstdlib> #include <stdlib.h> void main() { int i=(std::rand()%10)+10; std::cout<<i<<endl; }Und std ist immer noch keine Klasse oder Namespace.
-
KEIN .h
-
Okok
jetzt sieht der code so aus und ich hab einen ganz neuen fehler *g* (Wie viel probleme so eine zufallsvariable macht):
#include <iostream> #include <cstdlib> #include <stdlib.h> void main() { int i=(std::rand()%10)+10; std::cout<<i; }Fehler: 'rand' : Ist kein Element von 'std'
-
wie wäre es damit?
#include <iostream> #include <cstdlib> using namespace std; int main() { int i=(rand()%10)+10; cout<<i; return 0; }