先頭へ戻る

ptrdiff_t | Programming Place Plus C言語編 標準ライブラリのリファレンス

Programming Place Plus トップページ -- C言語編 -- 標準ライブラリのリファレンス(名前順)

Programming Place Plus トップページ -- C言語編 -- 標準ライブラリのリファレンス(ヘッダ別)

先頭へ戻る

ptrdiff_t

概要

2つのポインタの差を表す型。

ヘッダ

stddef.h

形式

typedef long ptrdiff_t;

詳細

2つのポインタを減算した結果を表現する、符号付き整数型。

注意

この型の大きさは、環境によって異なる。

使用例

#include <stdio.h>
#include <stddef.h>
#include <string.h>

int main(void)
{
    const char s[] = "abcdefgh";

    const char* p = strchr( s, 'f' );
    ptrdiff_t d = p - s;

    /* C99 では、%td を使って、ptrdiff_t型の値を出力できる */
    printf( "%ld\n", (long int)d );

    return 0;
}

実行結果:

5

関連

C99 には、ptrdiff_t型で表現できる最小値を表す PTRDIFF_MINマクロ、 最大値を表す PTRDIFF_MAXマクロがある。

解説章

第32章


参考リンク


------------------------------------------------------------------------

更新履歴

'2018/4/5 VisualStudio 2013 の対応終了。

'2018/4/2 「VisualC++」という表現を「VisualStudio」に統一。

'2018/1/22 新規作成。


------------------------------------------------------------------------

標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
Twitter でツイート Twitter をフォロー LINE で送る
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー