C++; bstr; looping

schaf82

Grünschnabel
Hallo ich versuche gerade über COM - Automatisierung etwas von Excel auszulesen.
Dabei brauch ich ein BSTR Variabel welche die Werte (A1, A2,A3, ... An) bzw. auch die Werte (A1,B1,C1,D1,....., xx1) einnehmen kann.

Wie ich ein entsprechendes Loop schreibe das die Werte generiert ist mir klar was ich nicht hinbekomme ist das zusammenfügen von char und int variablen in eine BSTR variable.
Ich bin mit Java großgeworden wo das alles kein problem ist aber in C++ horror....

besten Dank an alle

maeh ein Schaf
 
So vielleicht?

C++:
BSTR meinbstr;
char meincstr[16];
char meinchar;
int meinint;
...
sprintf(meincstr,"%c%d",meinchar,meinint);
meinbstr=SysAllocString(meincstr);
 
Hi.

Da ein BSTR ein Unicode String ist, sollte man statt char wchar_t und statt sprintf dementsprechend wsprintf verwenden.

In C++ kann man allerdings auch einfach einen std::wstring bzw. std::wostringstream verwenden:
C++:
std::wostringstream out;
out << L'A' << 33 << L"  B1";
BSTR aBString = SysAllocString(out.str.c_str());
Gruß
 
Zurück