//定義全局變量
char g_buffer[MAX_BUF] = {'/0'};
#define NULL_PTR 0
//獲取指定字符串的子串
char * substring(char *str, int startIndex, int length)
{
char *p = NULL_PTR;
char *temp = NULL_PTR;
int validlen = 0;
int actlen = 0;
//字符串實際長度
actlen = strlen(str);
//入參檢查
if ((str == NULL_PTR) || (length > actlen))
{
printf("Error! input string is null!/n");
return NULL_PTR;
}
//指向拷貝的字符串起始位置
temp = str+startIndex;
//可拷貝的字串長度
validlen = actlen - startIndex;
//若拷貝的長度大於可拷貝的字串長度,則拷貝長度爲可拷貝的長度
if (length > validlen)
{
length = validlen;
}
memset(g_buffer,0x0,MAX_BUF);
memcpy(g_buffer,temp,length);
p = g_buffer;
return p;
}