社区
C++ 语言
帖子详情
请教c++字符串替换问题
sunshine19870904
2012-09-23 04:42:48
我的mfc程序有一部分是要通过识别字符串中的个别字符来实现换行,所以我想把字符串中的标志字符替换成换行符“\r\n”,如"与十进制数1023等值的十六进制数为( )。|A.3FD|B.3FF|C.2FD|D.2FF"其中“|”换成“\r\n”来输出:
与十进制数1023等值的十六进制数为( )。
A.3FD
B.3FF
C.2FD
D.2FF
注:由于字符串是从数据库中读取的,经过了强制类型转换,所以不能识别"\r\n",我才想到这个办法的,求赐教~~~
...全文
209
13
打赏
收藏
请教c++字符串替换问题
我的mfc程序有一部分是要通过识别字符串中的个别字符来实现换行,所以我想把字符串中的标志字符替换成换行符“\r\n”,如"与十进制数1023等值的十六进制数为( )。|A.3FD|B.3FF|C.2FD|D.2FF"其中“|”换成“\r\n”来输出: 与十进制数1023等值的十六进制数为( )。 A.3FD B.3FF C.2FD D.2FF 注:由于字符串是从数据库中读取的,经过了强制类型转换,所以不能识别"\r\n",我才想到这个办法的,求赐教~~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sunshine19870904
2012-10-08
打赏
举报
回复
呵呵,谢谢大家的帮助,已经解决,我最后选用的是replace这个函数,content.Replace("|","\r\n");
mymtom
2012-09-28
打赏
举报
回复
难道6楼的函数还不能实现吗?
sunshine19870904
2012-09-27
打赏
举报
回复
[Quote=引用 4 楼 的回复:]
没太看懂楼主意思,如果只是进制转换,也太简单了点吧。麻烦楼主再说明下。
[/Quote]
不是的亲,这道题只是一个例子,是我从数据库里读出来的试题,想想以固定格式输出,但是现在我无法换行,都在一行输出了,我设置的换行符经过类型转换认不出来了
sunshine19870904
2012-09-27
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
不是很明白
我可以这样理解吗
你要做的事情是把|换成 换行符吗
为什么换成/r/n,这样字符串就不对了 ,多一个字节
直接换成/n
for(int i=0;i<string.getstrlength();i++)
{
char ch = string.getat(i);
if(ch != ‘|’)
{
ch = ‘/n’;
}
}
不知……
[/Quote]
是这个意思,但是我用的mfc换行符就是'\r\n',我先试试,因为这些试题都是从数据库中读出来的,经过类型转换成cstring类型,我无法实现他的换行
赵4老师
2012-09-25
打赏
举报
回复
用宽字符wchar_t[]处理带汉字文件。
赵4老师
2012-09-25
打赏
举报
回复
//GBK汉字内码范围(不包括A1xx~A9xx的标点符号英文字母特殊符号等)
//区码 ,位码
//81-A0 ,40-7E 80-FE
//AA-AF ,40-7E 80-A0
//B0-D6 ,40-7E 80-FE
//D7 ,40-7E 80-F9
//D8-F7 ,40-7E 80-FE
//F8-FE ,40-7E 80-A0
mymtom
2012-09-25
打赏
举报
回复
但是要注意有些汉字的编码的第二字节就是7C,与"|"的编码是相同的. 这时候就需要对汉字进行判断了
比如“億”GBK编码是 83 7C
mymtom
2012-09-25
打赏
举报
回复
[code=C/C++]
#include <stdio.h>
char *cvt(const char *src, char *dst)
{
int i, j;
j = 0;
for (i = 0; src[i]; i++)
if (src[i] == '|')
dst[j++] = '\r', dst[j++] = '\n';
else
dst[j++] = src[i];
dst[j] = '\0';
return dst;
}
int main(int argc, char *argv[])
{
char src[] = "与十进制数1023等值的十六进制数为( )。|A.3FD|B.3FF|C.2FD|D.2FF";
char dst[1024];
printf("%s\n", cvt(src, dst));
return 0;
}
[/Code]
Gloveing
2012-09-25
打赏
举报
回复
没说清楚!!
HAN-Kai
2012-09-25
打赏
举报
回复
没太看懂楼主意思,如果只是进制转换,也太简单了点吧。麻烦楼主再说明下。
ksintkgod_ttfu
2012-09-25
打赏
举报
回复
不会问题真的是 1023转16进制吧?
如果你不会算的话 用PC自带的计算机算一把 很简单的
希望能帮到lz
ksintkgod_ttfu
2012-09-25
打赏
举报
回复
不是很明白
我可以这样理解吗
你要做的事情是把|换成 换行符吗
为什么换成/r/n,这样字符串就不对了 ,多一个字节
直接换成/n
for(int i=0;i<string.getstrlength();i++)
{
char ch = string.getat(i);
if(ch != ‘|’)
{
ch = ‘/n’;
}
}
不知道是否是lz的意思
菜头叔
2012-09-25
打赏
举报
回复
1023的16进制=
3FF
青少年
C++
编程NOIP/CSP竞赛通关语法-字符串
1、本课程为零基础
C++
语法专题课,是青少儿参加信息学奥赛NOIP/CSP需要学习的语法专题课; 2、本课程每节课均配有练习题以及真题,以锻炼孩子的解题能力;... 6、本课程介绍的是字符串。也是历来竞赛重要考点。
linux命令置换符,Linux命令替换字符串
请教
老师[吐槽]常忘22:21:45@lazarus下载cef3中的范例中就有[吐槽]常忘< ...UVALive 6264 Conservation --拓扑排序题意:一个展览有n个步骤,告诉你每一步在那个场馆举行,总共2个场馆,跨越场馆需要1单位...
算法提高 字符串进位(蓝桥杯)
对字符串中每一位替换为它的后继字符,然后输出。 输入格式 一行N个a~y的字母。 输出格式 一行N个字母表示答案。 样例输入 abcd 样例输出 bcde 数据规模和约定 N<=100000。 提示
请教
小...
试题 算法提高 字符串进位
对字符串中每一位替换为它的后继字符,然后输出。
题解 | #使用字符函数统计字符串中各类型字符的个数#
*//** * 代码中的类名、 题解 | #去除字符串中重复的字符# #include // write your code here......#include using 题解 | #小乐乐改数字# #include #include int main() { int a; int i = 0, 题解 | #统计字符串中...
C++ 语言
64,637
社区成员
250,559
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章