Typ einer Variablen vom integrierten Datentyp bestimmen
-
Gibt es eine Möglichkeit, den Datentyp einer Variablen vom interierten Datentyp plattformunabhänig zu bestimmen?
Ich will damit solche Abfragen durchführen (sinngemäß):
if(type(var) == int) ...
-
omg, typeid() kann das ja doch!
Hmm, aber wie kann ich jetzt einen beliebigen Typ an eine Funktion übergeben, die mir dann z.b. typeid(var).name() zurückgibt. Wie übergebe ich der Funktion var?
-
#include <typeinfo> #include <stdio.h> int main (void) { int x; if (typeid(x) == typeid(int)) { puts ("int"); } if (typeid(x) == typeid(char)) { puts ("char"); } }
-
undefiniert schrieb:
Hmm, aber wie kann ich jetzt einen beliebigen Typ an eine Funktion übergeben, die mir dann z.b. typeid(var).name() zurückgibt. Wie übergebe ich der Funktion var?
template <typename T> string get_type_name(T var) { return typeid(var).name(); }Aber wozu brauchst Du sowas?! Du *weißt* doch, wenn Du den Code schreibst, welchen Typ die Variablen haben.