📄 h2ph.h
字号:
/* * Test header file for h2ph * * Try to test as many constructs as possible * For example, the multi-line comment :) *//* And here's a single line comment :) *//* Test #define with no indenting, over multiple lines */#define SQUARE(x) \((x)*(x))/* Test #ifndef and parameter interpretation*/#ifndef ERROR#define ERROR(x) fprintf(stderr, "%s\n", x[2][3][0])#endif /* ERROR */#ifndef _H2PH_H_#define _H2PH_H_/* #ident - doesn't really do anything, but I think it always gets included anyway */#ident "$Revision h2ph.h,v 1.0 98/05/04 20:42:14 billy $"/* Test #undef */#undef MAX#define MAX(a,b) ((a) > (b) ? (a) : (b))/* Test #ifdef */#ifdef __SOME_UNIMPORTANT_PROPERTY#define MIN(a,b) ((a) < (b) ? (a) : (b))#endif /* __SOME_UNIMPORTANT_PROPERTY *//* * Test #if, #elif, #else, #endif, #warn and #error, and `!' * Also test whitespace between the `#' and the command */#if !(defined __SOMETHING_MORE_IMPORTANT)# warn Be careful...#elif !(defined __SOMETHING_REALLY_REALLY_IMPORTANT)# error Nup, can't go on /* ' /* stupid font-lock-mode */#else /* defined __SOMETHING_MORE_IMPORTANT && defined __SOMETHING_REALLY_REALLY_IMPORTANT */# define EVERYTHING_IS_OK#endif/* Test && and || */#undef WHATEVER#if (!((defined __SOMETHING_TRIVIAL && defined __SOMETHING_LESS_SO)) \ || defined __SOMETHING_OVERPOWERING)# define WHATEVER 6#elif !(defined __SOMETHING_TRIVIAL) /* defined __SOMETHING_LESS_SO */# define WHATEVER 7#elif !(defined __SOMETHING_LESS_SO) /* defined __SOMETHING_TRIVIAL */# define WHATEVER 8#else /* defined __SOMETHING_TRIVIAL && defined __SOMETHING_LESS_SO */# define WHATEVER 1000#endif/* * Test #include, #import and #include_next * #include_next is difficult to test, it really depends on the actual * circumstances - for example, `#include_next <limits.h>' on a Linux system * with `use lib qw(/opt/perl5/lib/site_perl/i586-linux/linux);' or whatever * your equivalent is... */#include <sys/socket.h>#import "sys/ioctl.h"#include_next <sys/fcntl.h>/* typedefs should be ignored */typedef struct a_struct { int typedefs_should; char be_ignored; long as_well;} a_typedef;/* * however, typedefs of enums and just plain enums should end up being treated * like a bunch of #defines... */typedef enum _days_of_week { sun, mon, tue, wed, thu, fri, sat, Sun=0, Mon, Tue, Wed, Thu, Fri, Sat } days_of_week;#endif /* _H2PH_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -