代码拉取完成,页面将自动刷新
同步操作将从 冰雪不语/iceftpd 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#include "str.h"
#include "common.h"
void str_trim_crlf(char *str)
{
char *p = &str[strlen(str)-1];
while (*p == '\r' || *p == '\n')
*p-- = '\0';
}
void str_split(const char *str , char *left, char *right, char c)
{
char *p = strchr(str, c);
if (p == NULL)
strcpy(left, str);
else {
strncpy(left, str, p-str);
strcpy(right, p+1);
}
}
int str_all_space(const char *str)
{
while (*str) {
if (!isspace(*str))
return 0;
str++;
}
return 1;
}
void str_upper(char *str)
{
while (*str) {
*str = toupper(*str);
str++;
}
}
long long str_to_longlong(const char *str)
{
//return atoll(str);
long long result = 0;
long long mult = 1;
unsigned int len = strlen(str);
int i;
if (len > 15)
return 0;
for (i=len-1; i>=0; i--) {
char ch = str[i];
long long val;
if (ch < '0' || ch > '9')
return 0;
val = ch - '0';
val *= mult;
result += val;
mult *= 10;
}
return result;
}
unsigned int str_octal_to_uint(const char *str)
{
unsigned int result = 0;
int seen_non_zero_digit = 0;
while (*str) {
int digit = *str;
if (!isdigit(digit) || digit > '7')
break;
if (digit != '0')
seen_non_zero_digit = 1;
if (seen_non_zero_digit) {
result <<= 3;
result += (digit - '0');
}
str++;
}
return result;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。