- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章C++语言数据结构 串的基本操作实例代码由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
C语言数据结构 串的基本操作实例代码 。
输出结果:
实现代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
#include<iostream>
using
namespace
std;
typedef
int
Status;
#define Max 20
#define OK 1
#define ERROR 0
#define OVERLOE -2
typedef
struct
//堆分配表示串
{
char
*ch;
int
length;
}HString;
//===================================================================
Status CreatHString(HString &H)
//构造字符串
{
H.length = 0;
H.ch = (
char
*)
malloc
(Max*
sizeof
(
char
));
for
(
int
i = 0; i < Max; i++)
{
H.ch[i]=
getchar
();
H.length++;
if
(
getchar
() ==
'\n'
)
break
;
}
return
OK;
}
//CreatHString
//===================================================================
Status PrintHString(HString H)
//输出所输入的字符串
{
if
(H.length == 0)
{
cout <<
"空串!"
<< endl;
return
ERROR;
}
else
for
(
int
i = 0; i < H.length; i++)
cout << H.ch[i] <<
" "
;
cout << endl;
return
OK;
}
//PrintHString
//===================================================================
Status HStringLength(HString H)
//求字符串的长度
{
cout <<
"您输入的字符串长度为:"
<< endl;
cout << H.length << endl;
return
OK;
}
//HStringLength
//===================================================================
Status HStringCompare(HString H, HString T)
//求两个字符串长度差(绝对值)
{
cout <<
"两个字符串的长度差为:"
<< endl;
int
L;
L = H.length - T.length;
if
(L<0)
cout << -L << endl;
if
(L>=0)
cout << L << endl;
return
OK;
}
//HStringCompare
//===================================================================
Status ConcatHString(HString &S, HString H, HString T)
//链接H和T
{
if
(!(S.ch = (
char
*)
malloc
((H.length + T.length)*
sizeof
(
char
))))
exit
(OVERLOE);
for
(
int
i = 0; i < H.length; i++)
S.ch[i] = H.ch[i];
S.length = H.length + T.length;
for
(
int
j = H.length; j < S.length; j++)
S.ch[j] = T.ch[j-H.length];
return
OK;
}
//ConcatHString
//===================================================================
Status SubHString(HString &Sub, HString S,
int
pos,
int
len)
{
//用Sub返回串S的第pos个字符起长度为len的子串
if
(pos<1 || pos>S.length)
{
cout <<
"输入的位置有误!"
<< endl;
return
ERROR;
}
if
(len<0 || len>S.length - pos + 1)
{
cout <<
"输入的长度有误!"
<< endl;
return
ERROR;
}
if
(!len)
{
Sub.ch == NULL;
Sub.length = 0;
}
else
{
Sub.ch = (
char
*)
malloc
(len*
sizeof
(
char
));
for
(
int
i = 0; i < len ; i++)
Sub.ch[i] = S.ch[pos + i - 1];
Sub.length = len;
}
return
OK;
}
//SubHString
//===================================================================
Status ClearHString(HString &H)
//将H清为空串
{
if
(H.ch)
{
free
(H.ch);
H.ch = NULL;
}
H.length = 0;
return
OK;
}
//ClearHString
//===================================================================
void
main()
{
HString S,H,T;
cout <<
"请输入一个字符串(按回车键结束):"
<< endl;
CreatHString(H);
cout <<
"现在串中的字符为:"
<< endl;
PrintHString(H);
HStringLength(H);
cout <<
"请再输入一个字符串(按回车键结束):"
<< endl;
CreatHString(T);
HStringCompare(H, T);
ConcatHString(S, H, T);
cout <<
"现在串中的字符为:"
<< endl;
PrintHString(S);
HString Sub;
int
pos, len;
cout <<
"请输入截取位置pos及长度len:"
<< endl;
cin >> pos >> len;
SubHString(Sub, S, pos, len);
cout <<
"截取的子串为:"
<< endl;
PrintHString(Sub);
ClearHString(S);
cout <<
"检验S清空后是否为空:"
<< endl;
PrintHString(S);
}
//main
|
原文链接:http://blog.csdn.net/qq_32353771/article/details/49760259 。
最后此篇关于C++语言数据结构 串的基本操作实例代码的文章就讲到这里了,如果你想了解更多关于C++语言数据结构 串的基本操作实例代码的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在尝试创建一个程序,其中字符串的前三个字符重复给定次数,如下所示: foo('Chocolate', 3) # => 'ChoChoCho' foo('Abc', 3) # => 'AbcAbcA
我有以下字符串: std::string str = "Mode:AAA:val:101:id:A1"; 我想分离一个位于 "val:" 和 ":id" 之间的子字符串,这是我的方法: std::st
DNA 字符串可以是任意长度,包含 5 个字母(A、T、G、C、N)的任意组合。 压缩包含 5 个字母(A、T、G、C、N)的 DNA 字母串的有效方法是什么?不是考虑每个字母表 3 位,我们可以使用
是否有一种使用 levenstein 距离将一个特定字符串与第二个较长字符串中的任何区域进行匹配的好方法? 例子: str1='aaaaa' str2='bbbbbbaabaabbbb' if str
使用 OAuth 并使用以下函数使用我们称为“foo”(实际上是 OAuth token )的字符串加密 key public function encrypt( $text ) { // a
我是一名优秀的程序员,十分优秀!