mkstemp.c

来自「操作系统SunOS 4.1.3版本的源码」· C语言 代码 · 共 37 行

C
37
字号
#if !defined(lint) && defined(SCCSIDS)static	char sccsid[] = "@(#)mkstemp.c 1.1 92/07/30 SMI"; /* from UCB 5.2 3/9/86 */#endif/* * Copyright (c) 1983 Regents of the University of California. * All rights reserved.  The Berkeley software License Agreement * specifies the terms and conditions for redistribution. */#include <sys/file.h>mkstemp(as)	char *as;{	register char *s;	register unsigned int pid;	register int fd, i;	pid = getpid();	s = as;	while (*s++)		/* void */;	s--;	while (*--s == 'X') {		*s = (pid % 10) + '0';		pid /= 10;	}	s++;	i = 'a';	while ((fd = open(as, O_CREAT|O_EXCL|O_RDWR, 0600)) == -1) {		if (i == 'z')			return(-1);		*s = i++;	}	return(fd);}

⌨️ 快捷键说明

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