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

📄 struct-align-2_y.c

📁 linux下编程用 编译软件
💻 C
字号:
/* Disable this test for 16-bit targets.  */#include <limits.h>#if !(defined __GNUC__) || (INT_MAX > 32767)#include "compat-common.h"#include "struct-align-2.h"#define TEST(NAME)						\struct outer_##NAME {						\  int i;							\  struct epoll_event_##NAME ee;					\};								\								\extern unsigned int v1_##NAME;					\extern unsigned int v2_##NAME;					\extern unsigned long long v3_##NAME;				\								\extern struct outer_##NAME s_##NAME[2];				\								\extern void pass_##NAME (struct outer_##NAME);			\extern struct outer_##NAME return_##NAME (void);		\								\void								\checkp_##NAME (struct outer_##NAME *p)				\{								\  if (p->i != v1_##NAME)					\    DEBUG_CHECK;						\  if (p->ee.events != v2_##NAME)				\    DEBUG_CHECK;						\  if (p->ee.data != v3_##NAME)					\    DEBUG_CHECK;						\}								\								\void								\test_##NAME (void)						\{								\  struct outer_##NAME s;					\  DEBUG_FPUTS (DESC_##NAME);					\  DEBUG_NL;							\  DEBUG_FPUTS ("  global array");				\  checkp_##NAME (&s_##NAME[0]);					\  checkp_##NAME (&s_##NAME[1]);					\  DEBUG_NL;							\  DEBUG_FPUTS ("  argument");					\  pass_##NAME (s_##NAME[0]);					\  DEBUG_NL;							\  DEBUG_FPUTS ("  function result");				\  s = return_##NAME ();						\  checkp_##NAME (&s);						\  DEBUG_NL;							\}TEST (orig)#ifndef SKIP_ATTRIBUTETEST (structmax)TEST (struct4)TEST (struct8)TEST (data4)TEST (data8)TEST (p)TEST (pstruct4)TEST (pstruct8)TEST (pdata4)TEST (pdata8)#endif#elseint i;  /* prevent compiling an empty file */#endif  /* INT_MAX */

⌨️ 快捷键说明

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