Variablennamen von array Element ausgeben

  • Hallo zusammen,


    folgender Codeschnipsel:



    Ohne ein array klappt das mit #var ganz gut. Allerdings gibt der Code (verständlicherweise) "all[i]" aus. Gibt es eine Möglichkeit den String "a" ausgeben zu lassen?


    Danke für eure Hilfe.


    Gruß

    Andreas

  • Danke zillerbaer , aber ich weiß nicht, ob wir vom gleichen sprechen ;)


    Hintergrund ist, ich möchte mit folgendem Code das "Gitter" von skinlcarsng ins OSD schreiben, was soweit auch klappt:

    Sieht dann so aus.


    Mit dem zusätzlichen char - array geht das zwar, aber ich frage mich, ob es nicht eine elegantere Möglichkeit gibt, den Variablennamen direkt aus dem int array auszulesen. Die Elemente von xc[] sind mit Koordinaten belegte int. Mich interessiert nicht der int Wert, sondern der String "xc00", mit dem das Gitter beschriftet werden soll.


    #define getName(var) #var klappt mit einzelnen Variablen, aber in der for-Schleife wird wegen des arrays daraus ein "strxc[i]", was ja auch sinning ist, aber nicht das, was ich gerne hätte ...


    Wenn das nicht einfach geht, kann ich den Code oben natürlich auch so lassen.

  • std::map ?


    #include <map>

    std::map<int,char> names;

    names[1] = 'a';

    names[2] = 'b';

    names[3] = 'c';

    std::cout << names[1] << std::endl;


    oder vice versa


    #include <map>

    std::map<char,int> names;

    names['a'] = 1;

    names['b'] = 2;

    names['c'] = 3;

    std::cout << names['a'] << std::endl;


    oder auch als

    std::map<std::string,int>

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!