1. ホーム
  2. c++

[解決済み] 文字列をsize_tに変換する

2022-03-10 06:21:33

質問

を変換する方法はありますか? std::string から size_t ? 問題は、その size_t はプラットフォーム依存の型である(一方、その結果は sizeof ). そのため stringunsigned long または unsigned int を実行すると、正しく動作します。

EDIT 簡単なケースとしては

std::cout<< "Enter the index:";
std::string input;
std::cin >> input;
size_t index=string_to_size_t(input);
//Work with index to do something

解決方法は?

を使用することができます。 %zd の書式指定子として使用します。 scanf -タイプのアプローチです。

または std::stringstream これは、オーバーロードされた >> から size_t .