笔试面试中关于库函数实现的总结
2014-12-31 18:58
423 查看
//strcpy()函数的使用 char *strcpy(char *dest,const char *src){ assert(dest != NULL && src != NULL); char *temp = dest; while ((*temp++ = *src++) != '\0'); return dest; }
//strncpy()函数的使用 char *strncpy(char *dest,const char *src,unsigned int n){ assert(dest != NULL && src != NULL); char *temp = dest; while (n-- && (*temp++ = *src++) != '\0'); *temp = '\0'; return dest; }
//strcmp()函数的使用 int strcmp(const char *s,const char *t){ assert(s != NULL && t != NULL); while (*s && *t && *s == *t){ ++s;++t; } return (*s - *t); }
//strcat()函数的使用 char *strcat(char *dest,const char*src){ assert(dest != NULL && src != NULL); char *temp = dest; while(*temp != '\0') ++temp; while((*temp++ = *src++)!='\0'); return dest; }
//strlen()函数的使用 int strlen(const char *str){ assert(str != NULL); int len = 0; while(*str++ != '\0') len++; return len; }
//memset()函数的使用 void *memset(void *str,int c,unsigned int n){ assert(str != NULL); void *s = str; while (n--){ *(char *)s = (char)c; s = (char *)s + 1; } return str; }
//memcpy()函数的使用 不知道指针的类型,不能自增 void *memcpy(void *dest,void *src,int n){ void *temp = dest; int i = 0; while (i < n){ *((char *)temp + i) = *((char *)src + i); i++; } return dest; }
相关文章推荐
- 关于09年迅雷面试+笔试+上机题目的总结(解答来自网络)
- 关于前端学习和笔试面试的总结
- 关于截取字符串的java笔试(面试)题简化代码实现
- 关于”算法工程师/机器学习工程师”的笔试和面试总结
- 关于前端学习和笔试面试的总结
- 关于前端学习和笔试面试的总结
- 关于前端学习和笔试面试的总结
- 关于前端学习和笔试面试的总结
- 数据结构与算法分析笔记与总结(java实现)--链表问题面试笔试注意点
- 关于09年迅雷面试+笔试+上机题目的总结(解答来自网络)
- linux关于tcp协议ack的实现--总结和公平性问题
- 关于最近面试的总结
- 链表的一些常见笔试面试问题总结及代码
- 【转】笔试面试总结
- 【原创】关于wince OS开发面试问题的总结系列之Bootloader
- 【原创】关于wince os开发面试的总结系列之驱动
- 关于netfilter总结及包过滤防火墙实现
- 几个关于c#的实际面试题目总结
- 【原创】关于wince OS开发面试问题的总结系列之OAL
- 关于实现外部阅读系统信箱内容的方法总结