English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++string型をint型に変換する中将

プログラムを書く際にはstringをintに変換する必要がありますので、それについて調べました。

方法1:atoi関数

atoi関数は文字列を整数に変換します。stdlibライブラリが必要ですので、試してみました:

#include <iostream>
#include <string.h>
#include <stdlib.h>
using namespace std;
int main()
{
 string a="11",b="22";
 cout<<atoi(a)+atoi(b)<<endl;
 return 0;
}

しかし、エラーメッセージが表示されました:

明らかに、atoiにはconst charが必要です。*タイプであり、私が先ほど示したのはstringタイプであり、したがってstring.c_str()関数を追加する必要があります。string.c_strはBorlandがStringクラスに包装した関数であり、現在の文字列の先頭文字のアドレスを返します。

c_str関数の返り値はconst char*、したがってc_str()関数を追加します:

#include <iostream>
#include <string.h>
#include <stdlib.h>
using namespace std;
int main()
{
 string a="11",b="22";
 cout<<atoi(a.c_str())+atoi(b.c_str())<<endl;
 return 0;
}

それでは成功しました。何か不都合があれば、皆様の意見を期待します。

これで本文はすべて終わります。本文の内容が皆様の学習や仕事に少しでも役立つことを願っています。同時に、ナイアラチュートリアルのサポートもぜひお願いします。

声明:本文の内容はインターネットから取得しており、著作権者はすべて所有しています。インターネットユーザーが自発的に貢献し、自己でアップロードしたものであり、本サイトは所有権を持ちません。また、人工編集は行われていません。著作権侵害が疑われる内容を見つけた場合は、以下のメールアドレスにご連絡ください:notice#oldtoolbag.com(メール送信時は、#を@に置き換えてください。届け出をし、関連証拠を提供してください。一旦確認が取れたら、本サイトは即座に侵害疑いのコンテンツを削除します。)

おすすめ