当前位置: 代码迷 >> 汇编语言 >> 请教:怎么把字符串中的空格去掉啊有没有什么思路啊
  详细解决方案

请教:怎么把字符串中的空格去掉啊有没有什么思路啊

热度:9992   发布时间:2013-02-26 00:00:00.0
请问:如何把字符串中的空格去掉啊,有没有什么思路啊?
我看到书上有个例了,
它上面说repz   scasb   就能去掉,我在想scasb只是搜索,又不改变存储空间的值,怎么会去掉字符串中的空格呢?,大家说一般是怎样去掉的啊?


------解决方案--------------------------------------------------------
它上面说repz scasb 就能去掉.

我是这样理解的:在字符串中如果找到了 ' '字符,则DI指向匹配字符串后面的一个字符,也就是空格后面的字符,这时只要从DI所指的位置开始将字符依次赋值到这一个位置就可以去掉空格了.

另一种方法:扫描字符串,将不是空格的字符压入堆栈,扫描完后,将字符弹出堆栈.

初学不对之处请原谅!!!!
------解决方案--------------------------------------------------------
/*
*/
#include <stdio.h>
#include <iostream>
using namespace std;

void del_space(char str[])
{
char *i = str;
char *j = str;

while( *i != '\0 ' )
{
if( *i != ' ' )
{
*j = *i;
j++;
}
i++;
}
*j = '\0 ';
}
void main()
{
char a[20] = "I am an old boy ";
cout < <a < <endl;

// Delete space
del_space(a);

cout < <a < <endl;

}
你参考一下。
要关门了。
  相关解决方案