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

📄 fig15.31

📁 Unix Advanced Programming Source Code Unix1-7
💻 31
字号:
#include "apue.h"#include <sys/shm.h>#define	ARRAY_SIZE	40000#define	MALLOC_SIZE	100000#define	SHM_SIZE	100000#define	SHM_MODE	0600	/* user read/write */char	array[ARRAY_SIZE];	/* uninitialized data = bss */intmain(void){	int		shmid;	char	*ptr, *shmptr;	printf("array[] from %lx to %lx\n", (unsigned long)&array[0],	  (unsigned long)&array[ARRAY_SIZE]);	printf("stack around %lx\n", (unsigned long)&shmid);	if ((ptr = malloc(MALLOC_SIZE)) == NULL)		err_sys("malloc error");	printf("malloced from %lx to %lx\n", (unsigned long)ptr,	  (unsigned long)ptr+MALLOC_SIZE);	if ((shmid = shmget(IPC_PRIVATE, SHM_SIZE, SHM_MODE)) < 0)		err_sys("shmget error");	if ((shmptr = shmat(shmid, 0, 0)) == (void *)-1)		err_sys("shmat error");	printf("shared memory attached from %lx to %lx\n",	  (unsigned long)shmptr, (unsigned long)shmptr+SHM_SIZE);	if (shmctl(shmid, IPC_RMID, 0) < 0)		err_sys("shmctl error");	exit(0);}

⌨️ 快捷键说明

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