専門家の皆さん、protobuf-cメッセージの文字列値をデコードするのにあなたの助けが必要です。メッセージを言う
m { optional string id =0 }
文字列は値「test」で保存されます。Capim.id = "test"を使用してパックしm__pack(&m,buf);、メッセージストリームを使用してパックすると、のよう0a 04 74 65 73 74になります。ここで、文字列値は74 65 73 74ASCII形式です。ストリームm__unpack(NULL,length,buf)が含まれているAPIを使用して、文字列値を取り戻そうとします。buf文字列を印刷しようとすると、printf("%s\n",msg->id)セグメンテーション違反が発生します。アスキー値(74 65 73 74)を出力するべきではありませんか?文字列値の取得を手伝っていただけませんか。助けてくれてありがとう。