青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Xiao.Zhu C++

Xiao.Zhu C++

  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  29 隨筆 :: 14 文章 :: 17 評論 :: 0 Trackbacks

1 /*
2??*??linux/lib/string.c
3??*
4??*??Copyright (C) 1991, 1992??Linus Torvalds
5??*/
6
7 /*
8??* stupid library routines.. The optimized versions should generally be found
9??* as inline code in <asm-xx/string.h>
10??*
11??* These are buggy as well..
12??*/
13??
14 #include <linux/types.h>
15
16 char * ___strtok = NULL;
17
18 char * strcpy(char * dest,const char *src)
19 {
20?????????char *tmp = dest;
21
22?????????while ((*dest++ = *src++) != '\0')
23?????????????????/* nothing */;
24?????????return tmp;
25 }

26
27 char * strncpy(char * dest,const char *src,size_t count)
28 {
29?????????char *tmp = dest;
30
31?????????while (count-- && (*dest++ = *src++) != '\0')
32?????????????????/* nothing */;
33
34?????????return tmp;
35 }
36
37 char * strcat(char * dest, const char * src)
38 {
39?????????char *tmp = dest;
40
41?????????while (*dest)
42?????????????????dest++;
43?????????while ((*dest++ = *src++) != '\0')
44?????????????????;
45
46?????????return tmp;
47 }

48
49 char * strncat(char *dest, const char *src, size_t count)
50 {
51?????????char *tmp = dest;
52
53?????????if (count) {
54?????????????????while (*dest)
55?????????????????????????dest++;
56?????????????????while ((*dest++ = *src++)) {
57?????????????????????????if (--count == 0)
58?????????????????????????????????break;
59?????????????????}
60?????????}
61
62?????????return tmp;
63 }
64
65 int strcmp(const char * cs,const char * ct)
66 {
67?????????register signed char __res;
68
69?????????while (1) {
70?????????????????if ((__res = *cs - *ct++) != 0 || !*cs++)
71?????????????????????????break;
72?????????}
73
74?????????return __res;
75 }
76
77 int strncmp(const char * cs,const char * ct,size_t count)
78 {
79?????????register signed char __res = 0;
80
81?????????while (count) {
82?????????????????if ((__res = *cs - *ct++) != 0 || !*cs++)
83?????????????????????????break;
84?????????????????count--;
85?????????}
86
87?????????return __res;
88 }
89
90 char * strchr(const char * s,char c)
91 {
92?????????for(; *s != c; ++s)
93?????????????????if (*s == '\0')
94?????????????????????????return NULL;
95?????????return (char *) s;
96 }
97
98 size_t strlen(const char * s)
99 {
100?????????const char *sc;
101
102?????????for (sc = s; *sc != '\0'; ++sc)
103?????????????????/* nothing */;
104?????????return sc - s;
105 }
106
107 size_t strnlen(const char * s, size_t count)
108 {
109?????????const char *sc;
110
111?????????for (sc = s; *sc != '\0' && count--; ++sc)
112?????????????????/* nothing */;
113?????????return sc - s;
114 }
115
116 size_t strspn(const char *s, const char *accept)
117 {
118?????????const char *p;
119?????????const char *a;
120?????????size_t count = 0;
121
122?????????for (p = s; *p != '\0'; ++p) {
123?????????????????for (a = accept; *a != '\0'; ++a) {
124?????????????????????????if (*p == *a)
125?????????????????????????????????break;
126?????????????????}
127?????????????????if (*a == '\0')
128?????????????????????????return count;
129?????????????????++count;
130?????????}
131
132?????????return count;
133 }
134
135 char * strpbrk(const char * cs,const char * ct)
136 {
137?????????const char *sc1,*sc2;
138
139?????????for( sc1 = cs; *sc1 != '\0'; ++sc1) {
140?????????????????for( sc2 = ct; *sc2 != '\0'; ++sc2) {
141?????????????????????????if (*sc1 == *sc2)
142?????????????????????????????????return (char *) sc1;
143?????????????????}
144?????????}
145?????????return NULL;
146 }
147
148 char * strtok(char * s,const char * ct)
149 {
150?????????char *sbegin, *send;
151
152?????????sbegin??= s ? s : ___strtok;
153?????????if (!sbegin) {
154?????????????????return NULL;
155?????????}
156?????????sbegin += strspn(sbegin,ct);
157?????????if (*sbegin == '\0') {
158?????????????????___strtok = NULL;
159?????????????????return( NULL );
160?????????}
161?????????send = strpbrk( sbegin, ct);
162?????????if (send && *send != '\0')
163?????????????????*send++ = '\0';
164?????????___strtok = send;
165?????????return (sbegin);
166 }
167
168 void * memset(void * s,char c,size_t count)
169 {
170?????????char *xs = (char *) s;
171
172?????????while (count--)
173?????????????????*xs++ = c;
174
175?????????return s;
176 }
177
178 char * bcopy(const char * src, char * dest, int count)
179 {
180?????????char *tmp = dest;
181
182?????????while (count--)
183?????????????????*tmp++ = *src++;
184
185?????????return dest;
186 }
187
188 void * memcpy(void * dest,const void *src,size_t count)
189 {
190?????????char *tmp = (char *) dest, *s = (char *) src;
191
192?????????while (count--)
193?????????????????*tmp++ = *s++;
194
195?????????return dest;
196 }
197
198 void * memmove(void * dest,const void *src,size_t count)
199 {
200?????????char *tmp, *s;
201
202?????????if (dest <= src) {
203?????????????????tmp = (char *) dest;
204?????????????????s = (char *) src;
205?????????????????while (count--)
206?????????????????????????*tmp++ = *s++;
207?????????????????}
208?????????else {
209?????????????????tmp = (char *) dest + count;
210?????????????????s = (char *) src + count;
211?????????????????while (count--)
212?????????????????????????*--tmp = *--s;
213?????????????????}
214
215?????????return dest;
216 }
217
218 int memcmp(const void * cs,const void * ct,size_t count)
219 {
220?????????const unsigned char *su1, *su2;
221?????????signed char res = 0;
222
223?????????for( su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
224?????????????????if ((res = *su1 - *su2) != 0)
225?????????????????????????break;
226?????????return res;
227 }
228
229 /*
230??* find the first occurrence of byte 'c', or 1 past the area if none
231??*/
232 void * memscan(void * addr, unsigned char c, size_t size)
233 {
234?????????unsigned char * p = (unsigned char *) addr;
235
236?????????while (size) {
237?????????????????if (*p == c)
238?????????????????????????return (void *) p;
239?????????????????p++;
240?????????????????size--;
241?????????}
242?????????return (void *) p;
243 }

posted on 2007-03-12 09:29 Xiao.Zhu 閱讀(295) 評論(0)  編輯 收藏 引用 所屬分類: C/C++
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            在线视频你懂得一区二区三区| 国产噜噜噜噜噜久久久久久久久| 亚洲欧洲美洲综合色网| 亚洲综合色丁香婷婷六月图片| 亚洲免费福利视频| 亚洲高清在线观看| 最新日韩在线| 一二三四社区欧美黄| 亚洲一区精品在线| 午夜日韩视频| 久久久久久高潮国产精品视| 久久影院亚洲| 亚洲国产精品久久久久婷婷老年| 亚洲精品国产精品国自产在线| 一本久久a久久免费精品不卡| 中文av字幕一区| 亚洲一区二区三区在线视频 | 亚洲在线黄色| 久久久国产视频91| 欧美久久久久| 国产一区激情| 日韩午夜激情| 久久国产精品黑丝| 亚洲精美视频| 亚洲午夜久久久久久久久电影院| 久久精品国产69国产精品亚洲| 欧美插天视频在线播放| 国产精品永久免费| 午夜在线一区二区| 欧美精品久久久久久久免费观看| 国产欧美短视频| 亚洲精品美女久久7777777| 午夜精品久久久久影视| 欧美韩日精品| 亚欧成人精品| 欧美色一级片| 亚洲电影免费观看高清| 亚洲欧美日韩成人高清在线一区| 欧美激情一区三区| 久久精品免视看| 国产精品大片免费观看| 亚洲精品在线免费| 欧美大色视频| 久久精品国产免费| 国产欧美一区二区精品性| 中文在线不卡| 亚洲精品国产无天堂网2021| 久久亚洲国产成人| 狠狠色2019综合网| 欧美一区在线视频| 亚洲一区二区三区精品视频| 欧美日韩国产影院| 亚洲精品欧美日韩| 欧美激情一区二区在线| 欧美自拍丝袜亚洲| 国产精品制服诱惑| 宅男噜噜噜66一区二区| 亚洲精品午夜| 欧美日韩一区二区三区免费看| 亚洲精品视频免费在线观看| 欧美激情亚洲精品| 欧美+亚洲+精品+三区| 亚洲第一在线视频| 欧美国产一区二区| 欧美黄色小视频| 亚洲精品免费网站| 亚洲区在线播放| 欧美另类女人| 亚洲先锋成人| 亚洲一级一区| 国产啪精品视频| 久久亚洲欧美| 美女主播精品视频一二三四| 亚洲国产欧美日韩精品| 亚洲欧洲日本专区| 欧美性久久久| 久久精品国产欧美激情| 久久久精品国产免费观看同学| 亚洲国产精品久久久久| 亚洲精品中文在线| 国产精品专区第二| 免费国产一区二区| 欧美区日韩区| 欧美在线播放| 免费不卡亚洲欧美| 亚洲在线成人精品| 久久久精品一品道一区| 亚洲精品欧美日韩| 午夜精品99久久免费| 欧美经典一区二区三区| 一区二区三欧美| 午夜免费电影一区在线观看| 1000部国产精品成人观看| 日韩视频免费在线观看| 国产亚洲精品久久飘花| 欧美激情亚洲精品| 国产精品外国| 亚洲福利电影| 国产色视频一区| 91久久精品国产| 国产婷婷色一区二区三区四区| 欧美sm视频| 国产精品婷婷| 亚洲精品综合| 亚洲成人直播| 午夜精品久久久久久99热软件| 亚洲人成网站777色婷婷| 亚洲在线视频免费观看| 最新中文字幕亚洲| 欧美一区影院| 亚洲专区在线| 欧美激情一二三区| 老司机午夜精品视频| 国产精品白丝黑袜喷水久久久 | 亚洲第一区在线观看| 国产精品99久久久久久久女警| 亚洲国产第一| 久久福利毛片| 性欧美暴力猛交69hd| 欧美精品日韩一本| 免费在线国产精品| 激情久久综合| 欧美一区二区三区四区视频| 亚洲一区二区欧美| 欧美老女人xx| 亚洲国产美国国产综合一区二区| 黄色一区二区三区| 欧美一区二区三区四区在线观看地址| 一区二区精品| 欧美理论视频| 亚洲精品视频二区| 亚洲精品在线三区| 欧美国产综合| 亚洲黄色片网站| 亚洲黄色免费电影| 免费视频一区| 亚洲国产精品精华液2区45| 在线观看日韩精品| 久久综合图片| 欧美激情一区二区三区| 亚洲电影毛片| 欧美大香线蕉线伊人久久国产精品| 久久亚洲视频| 伊人色综合久久天天| 久久久久se| 欧美va天堂在线| 亚洲区一区二区三区| 欧美黄色影院| 在线视频你懂得一区| 欧美亚洲免费高清在线观看| 国产麻豆精品在线观看| 久久国产精品黑丝| 欧美激情欧美狂野欧美精品 | 一区二区三区产品免费精品久久75 | 亚洲一级网站| 国产精品免费久久久久久| 亚洲永久免费| 久久综合福利| 亚洲黄色免费| 欧美三级电影大全| 亚洲午夜精品在线| 欧美一区二区三区在线观看| 国产一区久久| 欧美激情成人在线视频| 在线亚洲一区观看| 99pao成人国产永久免费视频| 欧美aⅴ99久久黑人专区| 亚洲美女免费精品视频在线观看| 亚洲欧美日韩一区二区| 激情自拍一区| 欧美日韩精品免费| 午夜视频在线观看一区二区| 免费不卡中文字幕视频| 一本一道久久综合狠狠老精东影业| 国产精品男女猛烈高潮激情| 久久高清福利视频| 亚洲精品小视频| 久久免费精品视频| 一道本一区二区| 在线看无码的免费网站| 国产精品毛片高清在线完整版| 欧美一区二区三区在线观看视频| 亚洲国产裸拍裸体视频在线观看乱了中文 | 一区二区三区欧美视频| 久久全国免费视频| 一区二区福利| 在线观看日韩精品| 国产精品专区一| 欧美日本高清| 欧美在线播放视频| 亚洲欧洲日本mm| 免费高清在线视频一区·| 亚洲午夜精品久久久久久浪潮 | 国产午夜精品麻豆| 欧美日韩国产成人高清视频| 久久国产精品久久久久久| 一区二区三区欧美激情| 另类激情亚洲| 久久久久国产精品麻豆ai换脸| 亚洲网站在线|