中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-01 02:22
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » BC++ 3 如何去除 前后空格 查看 1,269 回复 2
楼 主 BC++ 3 如何去除 前后空格 发表于 2009-04-30 22:56 ·  中国 广东 深圳 电信
新手上路
积分 13
发帖 5
注册 2009-04-24 01:19
17年会员
UID 143651
性别 男
状态 离线
char *sp=" GUI$ Y ";

我想把以上的文本 前后空格去除掉

变成
GUI$ Y

然后 替换 $ 为 .

GUI.Y

查了好久 不知道怎么处理

char *pp=sp.erase(0,sp.find_not_of(" "));

以上用 删除(erase) 函数

报错 Structure required on left side of . or *
2 发表于 2009-04-30 23:04 ·  中国 广东 深圳 电信
新手上路
积分 13
发帖 5
注册 2009-04-24 01:19
17年会员
UID 143651
性别 男
状态 离线
Borland C++ 3 请问各位有没有什么好的 教程阿
3 发表于 2009-05-11 10:30 ·  中国 台湾 高雄市 中华电信
初级用户
积分 68
发帖 17
注册 2008-03-02 14:38
18年会员
UID 111866
性别 男
状态 离线
int MyTrim(char *ss)
{
char *head,*tail;
char *ts;

head=ss; // 指向字串的最前
tail=ss+(strlen(ss)-1); // 指向字串的最後

while(tail>=head) // 清除字串之後的空白
{
if(*tail==' ' || *tail==0x0a || *tail==0x0d) *tail--='\0'; else break;
}

while(*head!='\0') // 清除字串之前的空白
{
if(*head==' ') head++; else break;
}

ts =ss;
while(*head!='\0') *ts++=*head++;
*ts='\0';

while(ts<=tail) *ts++='\0'; // 之後的字元全部補NULL
if(*ss=='\0') return(0); else return(1);
}
论坛跳转: