Realization of C + + Common library function atoi,itoa,strcpy,strcmp
View Plaincopy to Clipboardprint?
Implementation of 1 1.//integer conversion into string itoa function
2 #include "stdafx.h"
3 #include <iostream>
4 using namespace Std;
5 void itoatest (int num,char str[])
6 {
7 int sign = Num,i = 0,j = 0;
8 Char temp[11];
9 if (sign<0)//To determine whether it is a negative number
10 {
num =-num;
12};
Do
14 {
Temp[i] = num%10+ ' 0 ';
num/=10;
i++;
}while (num>0);
if (sign<0)
20 {
temp[i++] = '-';
22}
Temp[i] = ' the ';
i--;
while (i>=0)
26 {
STR[J] = Temp[i];
j + +;
i--;
30}
STR[J] = ' the ';
32}
33 2. The implementation of string conversion into integer atoi function
int Atoitest (char s[])
35 {
int i = 0,sum = 0,sign; The number you entered may be preceded by a space or a tab should be judged
Notoginseng while (' ==s[i]| | ' \ t ' ==s[i])
38 {
i++;
40}
Sign = ('-' ==s[i])? -1:1;
if ('-' ==s[i]| | ') + ' ==s[i])
43 {
i++;
45}
while (s[i]!= ' ")
47 {
sum = s[i]-' 0 ' +sum*10;
i++;
50}
Sign*sum;
52}
53
54
55 3.//String Copy function
#include "stdafx.h"
#include <assert.h>
#include <string.h>
#include <iostream>
using namespace Std;
*srcpy Char (char *dest,const char *source)
62 {
An ASSERT ((dest!=null) && (source!=null));
The char *address = dest;
while (*source!= ' ")
66 {
*dest++=*source++;
68}
*dest = ' the ";
return to address;
71}
72
73 4.//to determine if the input is a palindrome string
#include "stdafx.h"
#include <string.h>
#include <iostream>
The using namespace Std;
78//Method one: With the help of array
Ispalindrome-BOOL (char *input)
80 {
Bayi Char s[100];
strcpy (S,input);
Length of int = strlen (input);
The int begin = 0,end = Length-1;
while (Begin<end)
86 {
if (S[begin]==s[end])
88 {
begin++;
end--;
91}
He else
93 {
The break;
95}
96}
if (begin<end)
98 {
return false;
100}
Or else
102 {
The return true;
104}
105}
106//Method two: Use pointers
isPalindrome2 bool (char *input)
108 {
109 if (input==null)
The return false;
+ Char *begin = input;
112 Char *end = Begin+strlen (input)-1;
113 while (begin<end)
114 {
if (*begin++!=*end--)
116 return false;
117}
118 return true;
119}
120
121 int Main (int argc, char* argv[])
122 {
123 Char *s = "1234554321";
124 if (Ispalindrome (s))
125 {
126 cout<< "True" <<endl;
127}
128 Else
129 {
130 cout<< "Fasle" <<endl;
131}
132
if (isPalindrome2 (s))
134 {
135 cout<< "True" <<endl;
136}
137 Else
138 {
139 cout<< "Fasle" <<endl;
140}
Cin.get ();
142
143 return 0;
144}
145
146
147 5.//does not use the library function, writes the function int strcmp (char *source, char *dest), if equal returns 0, otherwise returns-1
148 int strcmp (char *source, char *dest)
149 {
An assert (source!= null && dest!= null);
151 while (*source++==*dest++)
152 {
153 if (*source== ' &&*dest== ')
154 return 0;
155}
156 return-1;
157}
View Plaincopy to Clipboardprint