#ifndef COMMON_USER_H_ #define COMMON_USER_H_ #define SPECHAR(element) (strpbrk((element), "~!@#$%^&*()_+{}|:\"<>?\\,./;\'[]-=`")) //校验特殊字符 #define GETID(ID, NAME1, NAME2) ((((ID) != 0) && (strcmp((NAME1), (NAME2)) == 0)) ? (ID) : 0) //根据name查询ID #define CHECKOUTARG(element) ((NULL == (element) || "" == (element) || SPECHAR(element)) ? true : false) //校验参数 #define INVALID_INDEX (0) #define INIT_FAIL -1 #define INIT_SUCCESS 0 #define TIME_T2STRING(time_int, time_char) (strftime((time_char), 20, "%Y-%m-%d %H:%M:%S", (localtime(&time_int)))) #define STRING2TIME_T(time_char,time_int) \ do { \ struct tm tm_time; \ int res = sscanf(time_char, "%4d-%2d-%2d %2d:%2d:%2d", \ &tm_time.tm_year, &tm_time.tm_mon, &tm_time.tm_mday, \ &tm_time.tm_hour, &tm_time.tm_min, &tm_time.tm_sec); \ tm_time.tm_year -= 1900; \ tm_time.tm_mon--; \ tm_time.tm_isdst = -1; \ time_int = mktime(&tm_time); \ } while (0) #define MULTI_MASK 0x0002 #define VALID_MASK 0x0001 #define MULTI_GET(element) ((element) >> 1) #define MULTI_SET(element, value) (((element) & VALID_MASK) | (((value) << 1) & MULTI_MASK)) #define VALID_GET(element) ((element) & VALID_MASK) #define VALID_SET(element, value) (((element) & MULTI_MASK) | ((value) & VALID_MASK)) #endif