c++でstring型文字列のそれぞれの文字が半角か全角かを判定する 英数字だけだったらこんな判定は必要ないのですが。英数字と日本語が混ざった文字列の長さを取得するときなどにも応用ができるので、覚えておいて損はないと思います。 ソースコード #include <iostream> #include <Windows.h> using namespace std; int main() { string str = "全角半角判定するyo"; while (!str.empty()) { if (IsDBCSLeadByte(str[0]) == 0) { cout << str.substr(0, 1).c_str() << " :半角文字" << endl; str.erase(0, 1); } else { cout << str.substr(0, 2).c_str() << ":全