📄 argz_insert.c
字号:
/* Copyright (C) 2002, 2005 by Red Hat, Incorporated. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */#include <errno.h>#include <sys/types.h>#include <string.h>#include <stdlib.h>#include <argz.h>error_t_DEFUN (argz_insert, (argz, argz_len, before, entry), char **argz _AND size_t *argz_len _AND char *before _AND const char *entry){ int len = 0; if (before == NULL) return argz_add(argz, argz_len, entry); if (before < *argz || before >= *argz + *argz_len) return EINVAL; while (before != *argz && before[-1]) before--; len = strlen(entry) + 1; if(!(*argz = (char *)realloc(*argz, *argz_len + len))) return ENOMEM; memmove(before + len, before, *argz + *argz_len - before); memcpy(before, entry, len); *argz_len += len; return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -