## Tcl8.6.17/Tk8.6.17 Documentation > Tcl C API > SetErrno

### Tcl/Tk Applications | Tcl Commands | Tk Commands | [incr Tcl] Package Commands | SQLite3 Package Commands | TDBC Package Commands | tdbc::mysql Package Commands | tdbc::odbc Package Commands | tdbc::postgres Package Commands | tdbc::sqlite3 Package Commands | Thread Package Commands | Tcl C API | Tk C API | [incr Tcl] Package C API | TDBC Package C API

  NAME
    Tcl_SetErrno, Tcl_GetErrno, Tcl_ErrnoId, Tcl_ErrnoMsg — 不都合を保存し取出す為の不都合番号を操作する manipulate errno to store and retrieve error codes
  SYNOPSIS
    #include <tcl.h>
    void
    Tcl_SetErrno(errorCode)
    int
    Tcl_GetErrno()
    const char *
    Tcl_ErrnoId()
    const char *
    Tcl_ErrnoMsg(errorCode)
  引数 ARGUMENTS
    int errorCode (入力in)
  説明 DESCRIPTION
  KEYWORDS

### NAME

Tcl_SetErrno, Tcl_GetErrno, Tcl_ErrnoId, Tcl_ErrnoMsg — 不都合を保存し取出す為の不都合番号を操作する manipulate errno to store and retrieve error codes

### SYNOPSIS

#include <tcl.h>
void
Tcl_SetErrno(errorCode)
int
Tcl_GetErrno()
const char *
Tcl_ErrnoId()
const char *
Tcl_ErrnoMsg(errorCode)

### 引数 ARGUMENTS

int errorCode (入力in)
  ENOENT の如き POSIX の不都合番号｡　 A POSIX error code such as ENOENT.

### 説明 DESCRIPTION

Tcl_SetErrno と Tcl_GetErrno は errno 変数の利用の移植性を提供し､それは体系呼出し或は他の Tcl_Gets の様な操作の後の POSIX 不都合符号の記録操作に使われる｡どれかのOS上では､大域変数は機能構成単位の境界を横断して利用できないので､これらの手続函数が必要である｡ Tcl_SetErrno and Tcl_GetErrno provide portable access to the errno variable, which is used to record a POSIX error code after system calls and other operations such as Tcl_Gets. These procedures are necessary because global variable accesses cannot be made across module boundaries on some platforms.

Tcl_SetErrno は､ errno 変数を errorCode 引数の値に設定するので､呼出し側に errno 経由で不都合情報を返すことを望む C 言語の続き函数では､直接 errno を設定するのではなく Tcl_SetErrno を呼ぶべき｡ Tcl_SetErrno sets the errno variable to the value of the errorCode argument C procedures that wish to return error information to their callers via errno should call Tcl_SetErrno rather than setting errno directly.

Tcl_GetErrno は､ errno.の現在値を返す｡ errno を利用することを望む手続函数では errno を直接利用するのではなく､この手続函数を呼ぶべきである｡ Tcl_GetErrno returns the current value of errno. Procedures wishing to access errno should call this procedure instead of accessing errno directly.

Tcl_ErrnoId and Tcl_ErrnoMsg は errno 値の文字列表現を返す｡ Tcl_ErrnoId は装置可読の文書識別子､譬えば “EACCES” を返す､それは現在の errno の値に相当する｡ Tcl_ErrnoMsg は人可読性文字列､譬えば “permission denied” を返す､それはその errorCode 引数の値に相当する｡ errorCode 引数は典型的には Tcl_GetErrno. によって返される値に相当する｡これ等の函数によって返される文字列は静的に割付けられ呼出し側はそれを解放したり修正してはならない｡ Tcl_ErrnoId and Tcl_ErrnoMsg return string representations of errno values. Tcl_ErrnoId returns a machine-readable textual identifier such as “EACCES” that corresponds to the current value of errno. Tcl_ErrnoMsg returns a human-readable string such as “permission denied” that corresponds to the value of its errorCode argument. The errorCode argument is typically the value returned by Tcl_GetErrno. The strings returned by these functions are statically allocated and the caller must not free or modify them.

### KEYWORDS

errno, error code, global variables
Copyright © 1996 Sun Microsystems, Inc.