| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1449 人关注过本帖
标题:在C++中如何实现字符串与一个字符的连接?
只看楼主 加入收藏
arthur766
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-4-1
收藏
得分:0 
还是c++好啊
2007-04-01 01:59
RL720
Rank: 1
等 级:新手上路
帖 子:148
专家分:0
注 册:2005-11-6
收藏
得分:0 
想实现什么啊?

str串后面加b ? sdfdsfdsab ? str1=str+a;
str1串后面加b ? dfsa ? str1=str1+a;
str串第1个字符后面加b ? dbfsa ? str1.insert(1,&a,1);

[此贴子已经被作者于2007-4-1 2:07:27编辑过]


2007-04-01 02:06
fang00jian
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-4-1
收藏
得分:0 
我是想实现,把str串中的第二个字符f加上b呢,即生成新的字符串"fb"。不是插入.
2007-04-01 02:11
arthur766
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-4-1
收藏
得分:0 
以下是引用fang00jian在2007-4-1 1:53:14的发言:
呵呵,都搞乱了,先谢谢大家帮忙了~~~


#include <iostream>
#include <string>
using namespace std;
void main()
{
string str="sdfdsfdsa";
char a='b';
string str1="dfsa";
str1=str[1]+a;
cout<<str1<<endl;
}

C++中好像不能用strcat();是不是?

可以用strcat()的,不过参数必须是 字符串类型 如 strcat(str,"b")

2007-04-01 02:12
fang00jian
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-4-1
收藏
得分:0 
以下是引用RL720在2007-4-1 2:06:21的发言:
想实现什么啊?

str串后面加b ? sdfdsfdsab ? str1=str+a;
str1串后面加b ? dfsa ? str1=str1+a;
str串第1个字符后面加b ? dbfsa ? str1.insert(1,&a,1);

我是想实现,把str串中的第二个字符f加上b呢,即生成新的字符串"fb"。不是插入.

2007-04-01 02:17
RL720
Rank: 1
等 级:新手上路
帖 子:148
专家分:0
注 册:2005-11-6
收藏
得分:0 
str1 = str.substr(1,1);
str1 += a;
这个?

2007-04-01 02:36
arthur766
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-4-1
收藏
得分:0 
回复:(fang00jian)以下是引用RL720在2007-4-1 2:06...

#include <iostream>
#include <string>
using namespace std;

void main()
{
char a[10] = "anfbcc";
char b[4]="";
memcpy(b,a+2,2);
b[1] = 'b';
cout << b ;
exit(0);
}

不用string行不?

2007-04-01 02:42
fang00jian
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-4-1
收藏
得分:0 
谢谢了,俺学了substr()的用法.
2007-04-01 03:16
wang38361640
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-3-28
收藏
得分:0 
回复:(fang00jian)在C++中如何实现字符串与一个字符...

我知道你的意思是什么:
你想输出“abcdef" 的每二个字符‘ b',你可以这样写:
#include <iostream.h>
void main()
{char str[]="abcdef";
cout<<str[1]<<endl;// 因为字符串从0开始记数
}
你想在“abcdef"的字母b后加上一个字符g,使的原串变为“abgcdef", 你得使用循环才能实现,好像没有直接使用“+”就能解实现的。而且上面那个给你写的使用+号的程序是不正确的,不能得到任何输出。
可以在致 这样写:
#include<iostream.h>
void main()
{
char str[7]="abcdef";//后面还有一个'\0'吧

for(int i=7;i>=2;i--)
{ str[i]=str[i-1];}

str[2]='g';
cout<<str<<endl;
}
呵呵,其实你问的这两个问题,还真是简单,大家看你问的太简单了,都没有人理会,还是我比较好吧,
以后多写程序自然就不会有这样的问题了。

2007-04-07 23:21
wode2008
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-4-3
收藏
得分:0 

不能用+,用strcat就行了
strcat(str[1],'a');



2007-04-09 21:41
快速回复:在C++中如何实现字符串与一个字符的连接?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042224 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved