訳あってVisual Studio 2008でC++のプログラムを作らなければなりません。
古いC++なので何が使えて何が使えない命令なのかわからず困っています。
やりたいことは単純なのですが、C++を一から勉強しながらやっている状況で、Webで情報を漁りながら何とか動くものが出来ました。
動くと言ってもpaiza.ioなどで試しながらなのですが、そのコードをいざVisual Studio 2008に打ち込むとコンパイルが通らないのです。
ほとんどが「xxが見つかりませんでした。」「xxのメンバではありません。」などです。古いC++に最近の命令を使ったからなのでしょうか?
コードは以下のようなものです。
(12桁の数字が入っている文字列から数字を取り出して1000000000000から引き算して戻りの文字列に格納する)
#include <string> #define NULL 0 (途中省略) void calc(char *inNumber, char *answer){ //char[]をstringに変換 std::string s_inNumber = inNumber; //stringをlonglongに変換 long long wklong = stoull(s_inNumber, NULL, 10); <====C3861: 'stoull' //計算 wklong = 1000000000000 - wklong; //longlongをstringに変換 std::ostringstream sout; <============ C2079: 'sout' sout << std::setfill('0') << std::setw(12) << wklong; <== C2039,C4552,C3861, s_myNumber = sout.str(); <====C2228 //stringをchar[]に変換 char wkchar[ 12 ] = {}; s_myNumber.copy(wkchar, 12); (途中省略) return; }
よろしくお願いします。
エラーメッセージは抜粋でも良いので正確にコピー&ペーストして開示したほうが回答が付きやすいと思います。
回答2件
あなたの回答
tips
プレビュー