去掉string中的空格

来源:互联网 发布:c语言printf和scanf 编辑:程序博客网 时间:2024/05/18 22:52

void str(char * a)
{
 char *toks = " ";
 char * tok = strtok(a, toks);
 while (tok)
 {
  if (tok == a)
   strcpy(a, tok);
  else
   strcat(a, tok);
  tok = strtok(NULL, toks);
 }
}

int main()
{

 string b = "this is a dog";
 str(const_cast<char*>(b.c_str()));
 cout<<b;

 return 0;
}

  

 

#include <iostream>   #include <cstring>   using namespace std;int main() { char sentence[]="This is a test with strtok"; char *tokenPtr=strtok(sentence," "); while(tokenPtr!=NULL) { cout<<tokenPtr; tokenPtr=strtok(NULL," "); } getchar();return 0;} #include <iostream>#include <string>using namespace std;void Delete(char * a){char * tok = strtok(a, " ");while (tok!=NULL){if (tok == a)strcpy(a, tok);elsestrcat(a, tok);tok = strtok(NULL, " ");}}int main(){char sentence[]="This is a test with strtok"; Delete(sentence);cout<<sentence;getchar();return 0;}


 

 

#include <stdio.h>
#include <string>
#include <iostream>
using namespace std;

string DelNull(string str)
{
 char *buf=const_cast<char*>(str.c_str());
 char *token;
 string strData;
 while ((token = strsep(&buf, " ")) != NULL)
  strData += token;
 return strData;
}

int main(void)
{
 string str = "  root x艾迪  0 root /root /bin/bash ";
 cout<<DelNull(str);
 return 0;
}

 

扩展内容:

http://www.cnblogs.com/longzhao1234/archive/2012/05/31/2528317.html
 

原创粉丝点击