過去ログ
No.1246 ssize_t と size_t 型について
[戻る]
[ホームページ]
No.2487
ssize_t と size_t 型について
投稿者---hex(2004/08/17 20:02:07)
どうも初めまして。
linux の gcc(x86) 環境で C言語 を勉強しているものですが、 read() システムコールなどで使われている ssize_t型 と size_t型 は実際はどう宣言されているんでしょうか?一応 grep で /usr/include ディレクトリ以下のファイルを探してみたのですが見つかりませんでした(見落しかもしれませんが。。)
No.2489
Re:ssize_t と size_t 型について
投稿者---Sciggepy(2004/08/17 20:11:18)
Windowsのgccでは、sys/types.hで
typedef long _ssize_t;
typedef _ssize_t ssize_t;
と定義されていました。
read関数が定義されているヘッダファイルから順にたどっていけば、必ず見つかるはずです。
No.2490
Re:ssize_t と size_t 型について
投稿者---Sciggepy(2004/08/17 20:24:20)
(一つ忘れていたので追加)
gcc -E xxx.c >yyy.c
とすれば、yyy.cにヘッダファイルの必要な部分が展開されているはず。
No.2491
Re:ssize_t と size_t 型について
投稿者---hex(2004/08/17 21:02:30)
>gcc -E xxx.c >yyy.c
さっそくの返信ありがとうございます。
gcc にこんな便利なスイッチがあったなんて知りませんでした。さっそくためしてみたところ、
<ssize_t について>
__extention__ typedef int __ssize_t;
typedef __ssize_t ssize_t;
<size_t について>
typedef unsigned int size_t;
となっていました。大変便利な機能を教えていただきありがとうございました。これからも活用していきたいと思います。