|
You last visited: Today at 16:16
Advertisement
C++ Fragen | Arrays & struct
Discussion on C++ Fragen | Arrays & struct within the C/C++ forum part of the Coders Den category.
06/15/2011, 17:38
|
#1
|
elite*gold: 0
Join Date: Jun 2011
Posts: 63
Received Thanks: 13
|
C++ Fragen | Arrays & struct
Und zwar habe ich 2 Fragen!
Arrays:
Quote:
(RICHTIG)
int var[3];
var[1] = 4;
var[2] = 8;
cout << var[1] << endl;
cout << var[2] << endl;
|
Quote:
(FALSCH)
int var[2];
var[5] = 4;
var[8] = 8;
cout << var[5] << endl;
FEHLERMELDUNG:
warning C4789: Das Ziel der Speicherkopie ist zu klein.
warning C4789: Das Ziel der Speicherkopie ist zu klein.
(Es kommt dieser Fehler, aber ich kann es trozdem aufrufen. häää?)
|
--------------------------------
struct:
Quote:
struct Soldat{
int var;
};
int main() {
struct Soldat Peter;
Peter.var = 3;
cout << Peter.var << endl;
system("Pause");
return 0;
}
//(main-funktion) Warum muss ich bei "struct Soldat" noch Peter hinzufügen damit es was ausgibt? Warum kann es nicht einfach heißen( in der main-funktion)
struct Soldat; - und zum aufrufen ( Soldat.Var = 5; )
}
|
|
|
|
06/15/2011, 18:01
|
#2
|
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
|
Quote:
|
(Es kommt dieser Fehler, aber ich kann es trozdem aufrufen. häää?)
|
Es ist kein Fehler, sondern "nur" eine Warnung des Compilers. Du greifst auf das 6te und 9te Element des Arrays zu, obwohl es nur 2Elemente lang ist. Da wird sonstwas passieren, wenn du das Programm ausführst.
Quote:
Warum muss ich bei "struct Soldat" noch Peter hinzufügen damit es was ausgibt? Warum kann es nicht einfach heißen( in der main-funktion)
struct Soldat; - und zum aufrufen ( Soldat.Var = 5; )
|
Lern die Sprache? Du musst natürlich erst ein Objekt der Struktur erzeugen, um dann auf die Strukturelemente des Objekts zugreifen zu können. Wie soll das sonst funktionieren? Bevor du jetzt obercoole, tolle Spiele mit kleinen Soldaten programmieren willst, kauf dir ein Buch, les es komplett durch und lerne die Sprache!
|
|
|
06/15/2011, 18:11
|
#3
|
elite*gold: 0
Join Date: Jan 2010
Posts: 1,385
Received Thanks: 1,006
|
Kann man den arrayfehler dort eigentlich als Overflow error bezeichnen?
No spam:
Und zu dem struct, wie nope schon sagte, du erstellst ja die stuktur Soldat und damit du auf die strukturelemente(also die sachen in der struktur- bei dir int var) zugreifen kannst, musst du ein Objekt der struktur erstellen (also bei dir 'Peter') Sonst funktioniert das nicht so ganz.. am besten ist du guckst dir dazu nochmal die grundlagen an :  oder highscore.de.. oder du kaufst dir, was ich dir sehr empfehlen kann damit du immer mal wieder sachen schnell nachschlagen kannst ein buch
|
|
|
06/16/2011, 15:01
|
#4
|
elite*gold: 0
Join Date: Aug 2010
Posts: 334
Received Thanks: 79
|
Quote:
Originally Posted by .BritainAndy
Kann man den arrayfehler dort eigentlich als Overflow error bezeichnen?
|
Denk schon: (zitat) Im Wesentlichen werden bei einem Pufferüberlauf durch Fehler im Programm zu große Datenmengen in einen dafür zu kleinen reservierten Speicherbereich, den Puffer, geschrieben, wodurch nach dem Ziel-Speicherbereich liegende Speicherstellen überschrieben werden. Das passiert jedenfalls (glaub ich halt).
|
|
|
Similar Threads
|
vereinfachen mit arrays
02/03/2011 - AutoIt - 2 Replies
ich versuche grad das hier zu vereinfachen:
$Fach1=IniRead("C:\info.ini","Fach ","1","")
$Fach2=IniRead("C:\info.ini","Fach ","2","")
$Fach3=IniRead("C:\info.ini","Fach ","3","")
$Fach4=IniRead("C:\info.ini","Fach ","4","")
$Fach5=IniRead("C:\info.ini","Fach ","5","")
$Fach6=IniRead("C:\info.ini","Fach ","6","")
$Fach7=IniRead("C:\info.ini","Fach ","7","")
$Fach8=IniRead("C:\info.ini","Fach ","8","")
|
habt ihr die metin2 player struct?
07/05/2009 - Metin2 - 12 Replies
hi leute,
mich würds interessieren, ob ihr hier die player struct kennt? also den aufbau.
falls nicht, würde ich gerne wissen wie ihr die umgebung auslest.. falls ihr das überhaupt irgendwo macht ;).
gruß
wadim
|
All times are GMT +1. The time now is 16:17.
|
|