charconst-3.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 49 行

C
49
字号
/* Copyright (C) 2001 Free Software Foundation, Inc.  *//* { dg-do run } *//* { dg-options -Wno-multichar } *//* This tests values and signedness of multichar charconsts.   Neil Booth, 5 May 2002.  */#include <limits.h>int main (){  /* These tests require at least 2-byte ints.  8-)  */#if INT_MAX > 127  int scale = (int) (unsigned char) -1 + 1;  if ('ab' != (int) ((unsigned char) 'a' * scale + (unsigned char) 'b'))    abort ();  if ('\234b' != (int) ((unsigned char) '\234' * scale + (unsigned char) 'b'))    abort ();  if ('b\234' != (int) ((unsigned char) 'b' * scale + (unsigned char) '\234'))    abort ();  /* Multichar charconsts have type int and should be signed.  */#if INT_MAX == 32767# if '\234a' > 0#  error Preprocessor charconsts 1# endif  if ('\234a' > 0)    abort ();#elif INT_MAX == 2147483647# if '\234aaa' > 0#  error Preprocessor charconsts 2# endif  if ('\234aaa' > 0)    abort ();#elif INT_MAX == 9223372036854775807# if '\234aaaaaaa' > 0#  error Preprocessor charconsts 3# endif  if ('\234aaaaaaa' > 0)    abort ();#endif#endif  return 0;}

⌨️ 快捷键说明

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