EN JA
GETPROGNAME(3)
GETPROGNAME(3) FreeBSD Library Functions Manual GETPROGNAME(3)

名称

getprogname, setprognameプログラム名を取得するか設定する

ライブラリ

Standard C Library (libc, -lc)

書式

#include < stdlib.h>

const char *
getprogname( void);

void
setprogname( const char *progname);

解説

getprogname() および setprogname() 関数は、現在のプログラムの名前を操作します。それらは一貫した出力を生成するためにエラー報告ルーチンによって使用されます。

getprogname() 関数は、プログラムの名前を返します。名前がまだ設定されていない場合、それは NULL を返すでしょう。

setprogname() 関数は、 progname 引数の最後の構成要素であるプログラムの名前を設定します。与えられた文字列へのポインタがプログラム名として保持されるので、それはプログラムの生存期間の残りのために修正されてはなりません。

FreeBSD では、プログラムの名前が、 main();の前に実行されるセットアップコードによって設定されます。したがって、 setprogname() の実行は必要ではありません。最大の移植性を望むプログラムはそれでもそれを呼ぶべきです。別のオペレーティングシステムにおいては、これらの関数がポータビリティ (移植性のある) ライブラリで実装されるかもしれません。 setprogname() を呼ぶことは、前述のライブラリがセットアップコードの修正なしでプログラム名を知ることを可能にします。

関連項目

err(3), setproctitle(3)

歴史

これらの関数は、 NetBSD 1.6 ではじめて登場し、それらは FreeBSD 4.4 に入り込みました。
May 1, 2001 FreeBSD