次のコード行にC++
相当するものは何ですかJava
int x = Integer.parseInt("0010011110", 2);
std :: stoi(C ++ 11以降):
int x = std::stoi("0010011110", nullptr, 2);
strtol
2を底とする整数を解析するために使用できます。
const char *binStr = "0010011110";
char *endPtr;
int x = strtol(binStr, &endPtr, 2);
cout << x << endl; // prints 158
これがideoneのデモへのリンクです。
strtolを次のようにまとめるだけですparseInt
#include <stdio.h>
#include <stdlib.h>
int parseInt(const std::string& s, int base) {
return (int) strtol(s.c_str(), null, base);
}
int x = parseInt("0010011110", 2);