unix.c

来自「一个内存数据库的源代码这是服务器端还有客户端」· C语言 代码 · 共 89 行

C
89
字号
#line 41 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/unix.mx"#include "mal_config.h"#include "mal.h"#include "mal_exception.h"#include <stdio.h>#include <stdlib.h>#include <stdarg.h>/*---------------------------------------------------------------------------- * The Basic UNIX commands. */intunix_getenv(str *res, str varname){	char *p = getenv(varname);	if (p)		*res = GDKstrdup(p);	else		*res = GDKstrdup("");	return GDK_SUCCEED;}intunix_setenv(bit *res, str varname, str valname){#ifdef HAVE_PUTENV		/* prefer POSIX putenv */	/* leaks memory when varname value reused */	size_t len = strlen(varname) + strlen(valname) + 2;	char *envval = GDKmalloc(len);	strcpy(envval, varname);	strcat(envval, "=");	strcat(envval, valname);	*res = putenv(envval);	/* don't free envval! */#else#ifdef HAVE_SETENV	*res = setenv(varname, valname, TRUE);#else	*res = -1;#endif#endif	return GDK_SUCCEED;}/*Local Variables:c-basic-offset: 4End:*/#line 95 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/unix.mx"#include "mal.h"#ifdef WIN32#ifndef LIBUNIX#define unix_export extern __declspec(dllimport)#else#define unix_export extern __declspec(dllexport)#endif#else#define unix_export extern#endifunix_export str UNIXgetenv(str *res, str *varname);strUNIXgetenv(str *res, str *varname){	unix_getenv(res, *varname);	return MAL_SUCCEED;}unix_export str UNIXsetenv(bit *res, str *name, str *value);strUNIXsetenv(bit *res, str *name, str *value){	unix_setenv(res, *name, *value);	return MAL_SUCCEED;}#line 124 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/unix.mx"

⌨️ 快捷键说明

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