⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xstrtol.h

📁 Linux下ztelnet 的rz、sz源码
💻 H
字号:
#ifndef _xstrtol_h_#define _xstrtol_h_ 1#if STRING_TO_UNSIGNED# define __xstrtol xstrtoul# define __strtol strtoul# define __unsigned unsigned# define __ZLONG_MAX ULONG_MAX#else# define __xstrtol xstrtol# define __strtol strtol# define __unsigned /* empty */# define __ZLONG_MAX LONG_MAX#endif#undef __P#if defined (__STDC__) && __STDC__#define	__P(x) x#else#define	__P(x) ()#endifenum strtol_error  {    LONGINT_OK, LONGINT_INVALID, LONGINT_INVALID_SUFFIX_CHAR, LONGINT_OVERFLOW  };typedef enum strtol_error strtol_error;strtol_error  __xstrtol __P ((const char *s, char **ptr, int base,		  __unsigned long int *val, const char *valid_suffixes));#define _STRTOL_ERROR(exit_code, str, argument_type_string, err)	\  do									\    {									\      switch ((err))							\	{								\	case LONGINT_OK:						\	  abort ();							\									\	case LONGINT_INVALID:						\	  error ((exit_code), 0, "invalid %s `%s'",			\		 (argument_type_string), (str));			\	  break;							\									\	case LONGINT_INVALID_SUFFIX_CHAR:				\	  error ((exit_code), 0, "invalid character following %s `%s'",	\		 (argument_type_string), (str));			\	  break;							\									\	case LONGINT_OVERFLOW:						\	  /* FIXME: make this message dependent on STRING_TO_UNSIGNED */\	  error ((exit_code), 0, "%s `%s' larger than maximum long int",\		 (argument_type_string), (str));			\	  break;							\	}								\    }									\  while (0)#define STRTOL_FATAL_ERROR(str, argument_type_string, err)		\  _STRTOL_ERROR (2, str, argument_type_string, err)#define STRTOL_FAIL_WARN(str, argument_type_string, err)		\  _STRTOL_ERROR (0, str, argument_type_string, err)#endif /* _xstrtol_h_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -