摘要: STATUS str_cmp_no_case(const char* v_p_str1, const char* v_p_str2){ int i = 0; if(strlen(v_p_str1) != strlen(v_p_str2)) { return ERROR; } while(i < strlen(v_p_str1)) { if(v_p_str1[i] == v_p_str2[i] || v_p_str1[i] + 32 == v_p_str2[i] || v_p_str1[i] - 32 == v_p_str2[i]) { i++; continue; } return ER 阅读全文
posted @ 2011-06-03 11:02 无忧一生 阅读(2389) 评论(0) 推荐(0) 编辑
摘要: 1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。 该类型保证能容纳实现所建立的最大对象的字节大小。2.sizeof是运算符,strlen是函数。3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。 sizeof还可以用函数做参数,比如: short f(); printf("%d\n", sizeof(f())); 输出的结果是sizeof(short),即2。4.数组做sizeof的参数不退化,传递给strlen就退化为指针了。5.大部 阅读全文
posted @ 2011-06-03 10:55 无忧一生 阅读(875) 评论(0) 推荐(0) 编辑
摘要: STATUS del_space(char* v_p_Str){ int len; char* pBkup = NULL; char* pSrcStr = NULL; char* pDesStr = NULL; char* pEnd = NULL; char chFind = ' '; if(NULL == v_p_Str) { return ERROR; } len = strlen(v_p_Str); if(NULL == (pSrcStr = (char*)malloc(len + 1))) { return ERROR; } strcpy(pSrcStr, v_p_St 阅读全文
posted @ 2011-06-03 10:47 无忧一生 阅读(565) 评论(0) 推荐(0) 编辑
摘要: STATUS ip_valid_check(const char* v_p_Str){ int i; int tmp; char* p = NULL; if(strlen(v_p_Str) > 15) { return ERROR; } p = (char*)v_p_Str; tmp = atoi(p); if(tmp > 255 || tmp < 0) { return ERROR; } for(i = 0; i < 3; i++) { if(NULL == (p = strchr(p, '.'))) { return ERROR; } p++; tm 阅读全文
posted @ 2011-06-03 10:43 无忧一生 阅读(633) 评论(0) 推荐(1) 编辑