0

機能を使いたいstat。しかし、変数でそれを行う方法がわかりません。他のプロセスから DIRECTORY と sub-dir の値を取得します。

if( stat( DIRECTORY/sub-dir, &st ) == 0 )
{--}

次のようなエラーメッセージが表示されます"error: invalid operands to binary /"

4

2 に答える 2

1

そのはず

if( stat( "DIRECTORY/sub-dir", &st ) == 0 )

stat()の man ページを参照してください。

int stat(const char *path, struct stat *buf);

最初の引数 (パス) はconst char *型である必要があるため、パスは次のような文字列として提供する必要があります"DIRECTORY/sub-dir"

DIRECTORYsub_dirが変数の場合、それらを 3 番目の変数に連結する必要があります。

char buf[256];
sprintf(buf, "%s/%s", DIRECTORY, sub_dir);
if( stat( buf, &st ) == 0 )
于 2013-10-29T15:49:26.620 に答える