私は現在、asmでircボットをコーディングしています。これは、C ++で一度行ったことがあるので、発生するほとんどの問題を解決する方法を知っていますが、C ++で見られるようなsubstr()[*]関数が必要です。対応するPONG応答で応答できるように、PING要求からサーバー名を受け取るsubstr関数が必要です
しかし、MASMでそれを実行する方法がわかりません。マクロアセンブルと呼ばれるものを聞いたのですが、これらの関数ではsubstrがよく使用されているようです。
substr関数を機能させる方法を誰かが知っていますか?
[*] string substr ( size_t pos = 0, size_t n = npos )
これは私がC++でsubstr()関数を使用する方法です:
if(data.find("PING :") != std::string::npos){
string pong = "PONG :" + data.substr( (data.find_last_of(":")+1), (data.find_last_of("\r")-1) );
SCHiMBot.Pong(pong); // Keep the connection alive!
}
dataはサーバーから送信されるすべての情報を保持する文字列であり、SCHiMBotはサーバーとの通信に使用するクラスです。このコードは、コード化したボットから直接c&pされているため、完璧である必要があります。