+ -
当前位置:首页 → 问答吧 → 在线等,着急。。。谢谢

在线等,着急。。。谢谢

时间:2011-12-24

来源:互联网

#include<iostream>
#include<string>
#include<cstring>
using namespace std;
int main()
{
  string in_str;
  const size_t str_size=10;
  char res_str[str_size+1];
  cout<<"请输入"<<str_size<<"个字符"<<endl;
  cin>>in_str;
  size_t len=strlen(in_str.c_str());
  if(len>str_size)
  {
  len=str_size;
  cout<<"字符串大于"<<str_size<<"个字符,只取"<<str_size<<"个字符"<<endl;  
  }
  strncpy(res_str,in_str.c_str(),len);
  res_str[len+1]='\0';
  for(char *pbegin=res_str,*pend=res_str+str_size;pbegin!=pend;++pbegin)
  {
  cout<<*pbegin<<endl;  
  }
  system("pause");
  return 0;
}

作者: xiaoyu12345678   发布时间: 2011-12-24

想输出上面的数组 但是 有乱码

作者: xiaoyu12345678   发布时间: 2011-12-24

for(char *pbegin=res_str,*pend=res_str+str_size;pbegin!=pend;++pbegin)

*pend = res_str + len?

作者: Maxwell   发布时间: 2011-12-24

还是不行啊

作者: xiaoyu12345678   发布时间: 2011-12-24

试过了没 看到什么问题啊

作者: IT_LEAF   发布时间: 2011-12-24

for(char *pbegin=res_str,*pend=res_str+str_size;pbegin!=pend && *pbegin;++pbegin)
  {
  cout<<*pbegin<<endl;  
  }
 

作者: Saleayas   发布时间: 2011-12-24

for(char *pbegin=res_str,*pend=res_str+str_size;pbegin!=pend;++pbegin)
这个for循环看得不自然!

作者: zhozhoyu   发布时间: 2011-12-24

res_str[len+1]='\0';
这越了

作者: qscool1987   发布时间: 2011-12-24

我在gcc里面试,少了stdlib.h和unistd.h这两个头文件,加上之后,编译和运行都没问题。

作者: heartlesstoanyone   发布时间: 2011-12-24

热门下载

更多