Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 02:52

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Verständnisproblem mit typedef

Discussion on Verständnisproblem mit typedef within the C/C++ forum part of the Coders Den category.

Closed Thread
 
Old   #1
 
_Roman_'s Avatar
 
elite*gold: 0
Join Date: May 2010
Posts: 1,620
Received Thanks: 237
Verständnisproblem mit typedef

Hallo,

ich habe hier grad den C++ Primer vor mir liegen verstehe das folgende Beispiel nicht
Code:
int ia[3][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
using int_array = int[4];
typedef int int_array[4];
for (int_array *p = ia; p != ia + 3; ++p)
{
	for (int *q = *p; q != *p + 4; ++q)
		std::cout << *q << ' ';
}
Der Array war jetzt eigentlich nicht dabei, aber das spielt ja keine Rolle. Genauer gesagt habe ich Probleme mit dem typedef. Ich verstehe, dass beim
Code:
using int_array = int[4];
"int_array" als alias für nen int-Array mit 4 Elementen genutzt wird und dann bei der äußeren for-Schleife unten *p ein Pointer auf die erste "Zeile mit 4 Elementen" von ia ist. Warum wird dann bei
Code:
typedef int int_array[4];
das [4] angegeben wenn int_array doch schon ein alias für int[4] ist. Ich weiß, dass die innere for-Schleife auf die Elemente der jeweiligen Zeile zeigt, aber nicht wie.
_Roman_ is offline  
Old 02/18/2015, 23:04   #2

 
Delinquenz's Avatar
 
elite*gold: 0
Join Date: Jan 2009
Posts: 1,160
Received Thanks: 232
Die Anweisungen sind identisch.

Die typedef-Variante ist noch aus C-Zeiten, was auch etwas die verwirrende Reihenfolge begründet, während die using-Variante aus dem C++11-Standard ist.
Delinquenz is offline  
Thanks
1 User
Old 02/19/2015, 08:19   #3
 
_Roman_'s Avatar
 
elite*gold: 0
Join Date: May 2010
Posts: 1,620
Received Thanks: 237
Quote:
Originally Posted by Delinquenz View Post
Die Anweisungen sind identisch.

Die typedef-Variante ist noch aus C-Zeiten, was auch etwas die verwirrende Reihenfolge begründet, während die using-Variante aus dem C++11-Standard ist.
Verstehe, danke. Man muss also das [4] beim typedef einfach angeben. Mir fällt auch ein, dass Visual Studio gemeldet hat, dass die Dimensionen nicht übereinstimmen würde als ich versucht hab, es zu ändern. Da ist ja der C++11-Standard wesentlich angenehmer zu benutzen. Kann dann geclosed werden
_Roman_ is offline  
Old 02/19/2015, 13:56   #4

 
snow's Avatar
 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
#closed (on request)
snow is offline  
Closed Thread


Similar Threads Similar Threads
typedef Zeiger auf Funktionen
07/12/2013 - C/C++ - 3 Replies
houi Bis jetzt kannte ich "typedef" nur in so einer form: typedef char* byte_pointer; Gerade was neues entdeckt und bin mir nicht sicher ob ich das richtig verstanden habe: typedef void (*terminate_handler)(); terminate_handler set_terminate(terminate_handler f) noexcept;
[C] Verständnisproblem Formatzeichen
11/25/2012 - C/C++ - 2 Replies
Hallo elitepvpers Community, ich habe aktuell ein Verstädnnisproblem bei einem Code-Beispiel ich hoffe ihr könnt mir dabei weiterhelfen. Hier der Code: #include <stdio.h> int main(void) {
[HOOK][C++] #define, typedef und __stdcall Problem
12/08/2010 - C/C++ - 1 Replies
Hi, ich habe versucht mir die Arbeit mit dem Detour n bissl zu vereinfachen, aber iwie hänge ich gerade an einem Problem wo ich nicht weiterkomme, weil immer kommt der Fehler: error C2143: Syntaxfehler: Es fehlt ')' vor '__stdcall' das ist mein #define #define HOOK(Function,Paramter,Paramter2,Paramter3,Paramte r4) (typedef int (WINAPI *Function)(Parameter,Parameter2,Parameter3,Paramet er4)) #define HOOK2(Function,Variable) (Detour<Function> Variable)
C++ Verständnisproblem :(
08/18/2010 - C/C++ - 7 Replies
Gelöst Hi, manchmal wenn ich durch source codes rumsurfe immer wieder folgendes Konstrukt was ich grad iwie net ganz kapiere Beispielhaft mal das #include <stdio.h> #include <dlfcn.h>



All times are GMT +1. The time now is 02:52.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.