strcpy 的实现
来源:互联网 发布:大数据导论 编辑:程序博客网 时间:2024/06/11 13:04
// 字符串拷贝.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <assert.h>#define CONTAIN_OF_ZERO_BYTE(n) \(((n - 0x01010101) & (~n)) & 0x80808080)#define TEST(n) (((n - 1) & (~n)) & 0x80)#if 0n = 0 -> 0xFF & 0xFF = 0xFF // 只有0满足:1、减一等于0xFF;2、取反等于0xFFn = 1 -> 0x00 & 0xFE = 0x00n = 2 -> 0x01 & 0xFD = 0x01#endifchar* mystrcpy1(char* dest, const char* src){assert(dest != NULL && src != NULL);char* p = dest;while (*dest++ = *src++);return p;}char* mystrcpy2(char* dest, const char* src){assert(dest != NULL && src != NULL);char* p = dest;int delta = dest - src;while (*(char*)(src + delta) = *src++);return p;}char* mystrcpy3(char* dest, const char* src){assert(dest != NULL && src != NULL);int* s ;int* d ;char* p = dest;s = (int*)src;d = (int*)dest;while (1){if (!CONTAIN_OF_ZERO_BYTE(*s)){*d++ = *s++;continue;}src = (char*)s;dest = (char*)d;while (*dest++ = *src++); // 这个循环最多执行四次break;}return p;}char s1[16];int main(int argc, _TCHAR* argv[]){char s2[16] = "hello123456789";mystrcpy3(s1, s2);printf("s1 = %s\n", s1);return 0;}
0 0
- strcpy()库函数的实现
- strcpy函数的实现
- strcpy的实现
- 面试:strcpy的实现
- strcpy()的实现
- strcpy的实现
- strcpy的实现
- strcpy 的实现
- strcpy的实现代码
- strcpy的严格实现
- strcpy的实现代码
- strcpy函数的实现
- strcpy()的简洁实现
- strcpy函数的实现
- strcpy函数的实现
- strcpy的实现
- strcpy的实现
- strcpy函数的实现
- Java引用详解(强引用、软引用、弱引用、虚引用)
- JVM学习笔记-引用(Reference)机制
- android学习笔记 图片处理工具类
- Windows消息简介
- codeforces #368 div.2B
- strcpy 的实现
- 图结构练习——判断给定图是否存在合法拓扑序列
- Intel汇编语言程序设计学习-第五章 过程-下
- JMeter(四)-分布式性能测试
- HBase使用总结
- javascript利用回调函数解决异步困扰
- 正则表达式-对邮件地址进行校验
- POJ2531
- mysql数据库导出成xls文件