C++ string类insert函数的用法

请问一下这个函数的具体用法voidset_about(stringabout){for(inti=0;i<(int)(about.length()/2)/30&&i<25... 请问一下这个函数的具体用法
void set_about(string about)
{
for(int i = 0;i < (int)(about.length() / 2) / 30 && i < 25;i++)
for(int j = 0;j <= 29;j++)
{
if(about.substr(i * 30 * 2 + j * 2,2) == LINEFEED)
about.insert(i * 30 * 2 + j * 2,BLANK,0,2);
set_pixel(i + 8,j + 8,about.substr(i * 30 * 2 + j * 2,2));
}
for(int i = 0;i < (about.length() / 2) % 30;i++)
set_pixel((int)(about.length() / 2) / 30 + 8,i + 8,about.substr((int)((about.length() / 2) / 30) * 30 * 2 + i * 2,2));
}
以上是我所写的一个函数,其中set_pixel()是用于打点的,在此之前此函数并未出现故障 而LINEFEED 和 BLANK是字符串常量,
程序运行到这里的时候出现故障 但是并非是调试出错 而是运行之后程序不能继续运行有点像“无响应”
展开
 我来答
White_MouseYBZ
推荐于2017-10-15 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6601万
展开全部

string的成员函数insert有以下多种重载:

string &insert(int p0, const char *s);——在p0位置插入字符串s

string &insert(int p0, const char *s, int n);——在p0位置插入字符串s的前n个字符

string &insert(int p0,const string &s);——在p0位置插入字符串s

string &insert(int p0,const string &s, int pos, int n);——在p0位置插入字符串s从pos开始的连续n个字符

string &insert(int p0, int n, char c);//在p0处插入n个字符c

iterator insert(iterator it, char c);//在it处插入字符c,返回插入后迭代器的位置

void insert(iterator it, const_iterator first, const_iteratorlast);//在it处插入从first开始至last-1的所有字符

void insert(iterator it, int n, char c);//在it处插入n个字符c

以下是第二行性能的举例代码:

//#include "stdafx.h"//If the vc++6.0, with this line.
#include <string>
#include <iostream>
using namespace std;//
int main(void){
    string a="1234567890",b="abcdefghijklmn";
    a.insert(3,b,5,4);
    cout << a << endl;
    return 0;
}

输出是123fghi4567890.

百度网友c281b4c
2013-08-06 · TA获得超过2293个赞
知道大有可为答主
回答量:2382
采纳率:50%
帮助的人:1044万
展开全部
string-》c风格字符串要转换的。成员函数c_str();
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
520ckyear
2013-08-06 · TA获得超过302个赞
知道小有建树答主
回答量:433
采纳率:100%
帮助的人:129万
展开全部
set_pixel(i + 8,j + 8,about.substr(i * 30 * 2 + j * 2,2))参数匹配吗??看看其用法,还有参数类型。
追问
这个函数是匹配了的,是insert函数的那个位置出错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式