String Array in Integer Array umwandeln
-
habe schon gegoogled etc, bin aber noch auf keine funktionierende lösung gestoßen.
atoi() funktioniert nicht. in java gibt es wohl sowas wie: intArray[i]=Integer.parseInt(stringArray[i]);aber das funktioniert in c++ leider nicht.
meine idee ist es mit einer schleife dass array zu durchlaufen und jedes einzelne feld in ein neues int array zu speichern.
hat jemand n tip?
-
mueslimann schrieb:
habe schon gegoogled etc, bin aber noch auf keine funktionierende lösung gestoßen.
atoi() funktioniert nicht. in java gibt es wohl sowas wie: intArray[i]=Integer.parseInt(stringArray[i]);aber das funktioniert in c++ leider nicht.
meine idee ist es mit einer schleife dass array zu durchlaufen und jedes einzelne feld in ein neues int array zu speichern.
hat jemand n tip?
Warum soll atoi nicht funktionieren? Was gefällt Dir denn daran nicht?
iArray[i][j] = atoi( strArray[i][j].c_str() );
mfg Martin
-
keine ahnung warum das grad nicht geklappt hat.
habe es nun wie folgt gelöst:for(int k=0;k<78;k++) { stringstream str; str << test[k][0]; int intTest[78][78]; str >> intTest[k][l]; } for(int l=0;l<78;l++) { stringstream str; str << test[0][i]; int intTest[78][78]; str >> intTest[0][l]; }
-
und dein code macht das, was du möchtest? Oo
was spricht denn gegen?int ToInt(const std::string& value) { //hier kannst du auch atoi nutzen oder boost::lexical_cast oder was auch immer du magst std::stringstream ss; ss << value; int ret_val; ss >> ret_val; } const std::size_t array_length = 78; int main() { std::string arr[array_length]; /*...*/ int int_arr[array_length]; for(std::size_t i(0); i != array_length; ++i) { int_arr[i] = ToInt(arr[i]); } }
bb