返回顶部

名称

get_long - 提示用户从标准输入中输入一行文本,并返回等效的长整型

概述

#include <cs50.h>
long get_long(const char *format, ...);

描述

提示用户从标准输入中输入一行文本,并返回等效的长整型;如果文本不代表一个长整型或会导致溢出,会重新提示用户。

提示的格式类似于 printf(3)

返回值

返回从标准输入中读取的行的长整型等效值,在 [LONG_MIN, LONG_MAX) 范围内。如果无法读取行,返回 LONG_MAX。

示例

 /**
  * 返回从标准输入中读取的两个长整型的差,如果有错误,则返回 LONG_MAX。
  */
  long subtract_longs(void)
  {
      // 从标准输入中读取长整型
      long i = get_long("输入一个长整型: ");

      // 确保我们成功读取了一个
      if (i == LONG_MAX)
      {
          return LONG_MAX;
      }

      long j = get_long("你想从 %ld 中减去什么? ", i);

      if (j == LONG_MAX)
      {
          return LONG_MAX;
      }

      return i - j;

  }

另见

get_char(3), get_double(3), get_float(3), get_int(3), get_string(3), printf(3)