

#include <nitro/os.h>
void OS_ConvertToArguments( const char* str,
char cs,
chat* buffer,
u32 bufferSize );
| str | 引数データの元となる文字列です。 |
| cs | 引数のセパレータ文字です。 |
| buffer | 引数データを格納する引数バッファです。 |
| bufferSize | 引数バッファの大きさです。 |
なし。
文字列から、引数データへ変換して指定のバッファに格納します。
ここで変換された引数データは、OS_GetArgc や OS_GetArgv や OS_GetOpt などで取得することが出来ます。デフォルトでは、システム内で持っている引数バッファ領域
( buryarg ツールや buryarg.TWL ツールによって引数データが埋め込まれます) が用いられますが、OS_SetArgumentBuffer() で別の引数バッファへと切り換えることが出来ます。
str には引数データの元となる文字列を、cs には引数のセパレータ文字を指定します。
(例)
セパレータが" "(スペース) であるときに、"-a" と "123" と "test string" という3つの引数を与える場合は、
OS_ConvertToArguments( "dummy -a 123 \"test string\"",
' ', buffer, size );
のように指定します。
デフォルトではOS_GetArgv(0)はプログラム名となり、OS_GetOpt()はOS_GetArgv(1)に相当するものから解析対象となるので、文字列に "dummy" というダミーのプログラム名を与えています。
"test string" は途中に区切り文字であるスペースを含んでいますが " " で囲むことにより1つの引数として扱われます。
buffer には引数データが格納されるバッファ領域を指定します。bufferSize にはバッファのサイズを指定します。この領域を越えてバッファに書き込まれることはありません。
この関数は、FINALROM ビルドでは何もしません。
OS_GetArgv, OS_GetArgc, OS_GetOpt
buryarg ツール,buryarg.TWL ツール
OS_GetArgumentBuffer, OS_ConvertToArguments
2008/07/09 buryarg.TWL について追記
2005/09/09 初版