NDSでMQOビューアをつくる(2)

昨日のコードのC++版。とりあえずPC用で。

#include <stdio.h>
#include <iostream>
#include <string>
#include <boost/xpressive/xpressive.hpp>

using namespace std;

int main(int argc, char *argv[])
{
	using namespace boost::xpressive;


	if (argc < 1) {
		return 1;
	}

	FILE *fp = fopen(argv[1], "r");
	if (fp == NULL) {
		return 1;
	}

	sregex re = sregex::compile("(\\-?\\d+\\.?\\d*)|(\"[^\"]+\")|([_a-zA-Z][_a-zA-Z1-9]*)");
	string str;

	char buf[1024];
	while (fgets(buf, sizeof(buf) / sizeof(buf[0]), fp)) {
		str = buf;

		sregex_iterator it(str.begin(), str.end(), re);
		sregex_iterator end;
		for (; it != end; ++it) {
			cout << it->str() << endl;
		}
	}

	fclose(fp);

	return 0;
}

Boost最高です。いちおうプロジェクト一式はここに置いてます。
さて、問題はこれがDSで動くかどうか。