#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#include <cstring>
using namespace std;
void fill( std:: vector < const char * > & vec, string str) {
uint32_t start_count = 1 ;
stringstream regname;
for ( uint32_t count = 0 ; count <= 3 ; count++ ) {
regname.str ( "" ) ;
regname << str << ( uint32_t ) ( count + start_count) ;
std:: cout << "regname : " << regname.str ( ) << std:: endl ;
char * p = new char [ regname.str ( ) .length ( ) + 1 ] ;
strcpy ( p, regname.str ( ) .c_str ( ) ) ;
vec.push_back ( p) ;
}
}
int main( ) {
vector< const char * > vec;
fill( vec, "temp" ) ;
for ( int i = 0 ; i < vec.size ( ) ; i++ )
std:: cout << "value at index : " << i << " is : " << vec[ i] << std:: endl ;
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPGNzdHJpbmc+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBmaWxsKHN0ZDo6dmVjdG9yPGNvbnN0IGNoYXIgKj4gJiB2ZWMsIHN0cmluZyBzdHIpIHsKCXVpbnQzMl90IHN0YXJ0X2NvdW50ID0gMTsKCXN0cmluZ3N0cmVhbSByZWduYW1lOwoJZm9yKHVpbnQzMl90IGNvdW50ID0gMDsgY291bnQgPD0gMzsgY291bnQrKykgewoJCXJlZ25hbWUuc3RyKCIiKTsKCQlyZWduYW1lIDw8IHN0ciA8PCAodWludDMyX3QpKGNvdW50ICsgc3RhcnRfY291bnQpOwoJCXN0ZDo6Y291dCA8PCAicmVnbmFtZSA6ICIgPDwgcmVnbmFtZS5zdHIoKSA8PCBzdGQ6OmVuZGw7CgkJY2hhciAqIHAgPSBuZXcgY2hhcltyZWduYW1lLnN0cigpLmxlbmd0aCgpICsgMV07CgkJc3RyY3B5KHAsIHJlZ25hbWUuc3RyKCkuY19zdHIoKSk7CgkJdmVjLnB1c2hfYmFjayhwKTsKCX0KfQoKaW50IG1haW4oKSB7Cgl2ZWN0b3I8Y29uc3QgY2hhciAqPiB2ZWM7CglmaWxsKHZlYywgInRlbXAiKTsKCQoJZm9yKGludCBpID0gMDsgaSA8IHZlYy5zaXplKCk7IGkrKykKCQlzdGQ6OmNvdXQgPDwgInZhbHVlIGF0IGluZGV4IDogIiA8PCBpIDw8ICIgaXMgIDogIiA8PCB2ZWNbaV0gPDwgc3RkOjplbmRsOwoJcmV0dXJuIDA7Cn0=