当前位置: 首页 > news >正文

个人 做自媒体 建网站图片制作成视频的手机软件

个人 做自媒体 建网站,图片制作成视频的手机软件,中宁网站建设,帝国cms 网站地图标签C的sstream标准库介绍 接下来我们继续看一下C风格的串流控制 #xff0c;C引入了ostringstream、istringstream、stringstream这三个类#xff0c;要使用他们创建对象就必须包含sstream.h头文件。 istringstream类用于执行C风格的串流的输入操作。 ostringstream类用于执行… C的sstream标准库介绍 接下来我们继续看一下C风格的串流控制 C引入了ostringstream、istringstream、stringstream这三个类要使用他们创建对象就必须包含sstream.h头文件。 istringstream类用于执行C风格的串流的输入操作。 ostringstream类用于执行C风格的串流的输出操作。 strstream类同时可以支持C风格的串流的输入输出操作。 istringstream类是从istream输入流类和stringstreambasec字符串流基类派生而来ostringstream是从ostream输出流类和stringstreambasec字符串流基类派生而来stringstream则是从iostream(输入输出流类)和和stringstreambasec字符串流基类派生而来。 他们的继承关系如下图所示: istringstream是由一个string对象构造而来istringstream类从一个string对象读取字符。 istringstream的构造函数原形如下 istringstream::istringstream(string str); 复制代码 代码如下: #include iostream   #include sstream   using  namespace  std;  int  main ()   {  istringstream istr;  istr.str(“1 56.7”,);  //上述两个过程可以简单写成 istringstream istr(“1 56.7”);  cout  istr.str()endl;  int  a;  float  b;  istra;  cout aendl;  istrb;  cout bendl;  system(“pause”);  } 上例中构造字符串流的时候空格会成为字符串参数的内部分界例子中对a,b对象的输入”赋值”操作证明了这一点字符串的空格成为了整型数据与浮点型数据的分解点利用分界获取的方法我们事实上完成了字符串到整型对象与浮点型对象的拆分转换过程。 str()成员函数的使用可以让istringstream对象返回一个string字符串例如本例中的输出操作(coutistr.str();。 ostringstream同样是由一个string对象构造而来ostringstream类向一个string插入字符。 ostringstream的构造函数原形如下 ostringstream::ostringstream(string str); 示例代码如下 复制代码 代码如下: #include iostream   #include sstream   #include string   using  namespace  std;  int  main ()   {  ostringstream ostr;  //ostr.str(“abc”);//如果构造的时候设置了字符串参数,那么增长操作的时候不会从结尾开始增加,而是修改原有数据,超出的部分增长  ostr.put(‘d’);  ostr.put(‘e’);  ostr”fg”;  string  gstr   ostr.str();  cout gstr;  system(“pause”);  } 在上例代码中我们通过put()或者左移操作符可以不断向ostr插入单个字符或者是字符串通过str()函数返回增长过后的完整字符串数据但值得注意的一点是当构造的时候对象内已经存在字符串数据的时候那么增长操作的时候不会从结尾开始增加,而是修改原有数据,超出的部分增长。 对于stringstream了来说不用我多说大家也已经知道它是用于C风格的字符串的输入输出的。 stringstream的构造函数原形如下 stringstream::stringstream(string str); 示例代码如下: 复制代码 代码如下: #include iostream   #include sstream   #include string   using  namespace  std;  int  main ()   {  stringstream ostr(“ccc”);  ostr.put(‘d’);  ostr.put(‘e’);  ostr”fg”;  string  gstr   ostr.str();  cout gstrendl;  char  a;  ostra;  cout a  system(“pause”);  } 除此而外stringstream类的对象我们还常用它进行string与各种内置类型数据之间的转换。 示例代码如下 复制代码 代码如下: #include iostream   #include sstream   #include string   using  namespace  std;  int  main ()   {  stringstream sstr;  //——–int转string———–  int  a100;  string  str;  sstra;  sstrstr;  cout strendl;  //——–string转char[]——–  sstr.clear();//如果你想通过使用同一stringstream对象实现多种类型的转换请注意在每一次转换之后都必须调用clear()成员函数。  string  name   “colinguan”;  char  cname[200];  sstrname;  sstrcname;  cout cname;  system(“pause”);  } 接下来我们来学习一下输入/输出的状态标志 的相关知识C中负责的输入/输出的系统包括了关于每一个输入/输出操作的结果的记录信息。这些当前的状态信息被包含在io_state类型的对象中。io_state是一个枚举类型就像open_mode一样以下便是它包含的值。 goodbit 无错误 Eofbit 已到达文件尾 failbit 非致命的输入/输出错误可挽回 badbit 致命的输入/输出错误,无法挽回 有两种方法可以获得输入/输出的状态信息。一种方法是通过调用rdstate()函数它将返回当前状态的错误标记。例如假如没有任何错误则rdstate()会返回goodbit. 下例示例表示出了rdstate()的用法 复制代码 代码如下: #include iostream   using  namespace  std;  int  main ()   {  int  a;  cin a;  cout cin .rdstate()endl;  if (cin .rdstate() ios ::goodbit)  {  cout ”输入数据的类型正确无错误”endl;  }  if (cin .rdstate() ios_base::failbit)  {  cout ”输入数据类型错误非致命错误可清除输入缓冲区挽回”endl;  }  system(“pause”);  } 另一种方法则是使用下面任何一个函数来检测相应的输入/输出状态 bool bad(); bool eof(); bool fail(); bool good(); 下例示例表示出了上面各成员函数的用法 复制代码 代码如下: #include iostream   using  namespace  std;  int  main ()   {  int  a;  cin a;  cout cin .rdstate()endl;  if (cin .good())  {  cout ”输入数据的类型正确无错误”endl;  }  if (cin .fail())  {  cout ”输入数据类型错误非致命错误可清除输入缓冲区挽回”endl;  }  system(“pause”);  } 如果错误发生那么流状态既被标记为错误你必须清除这些错误状态以使你的程序能正确适当地继续运行。要清除错误状态需使用clear()函数。此函数带一个参数它是你将要设为当前状态的标志值。只要将ios::goodbit作为实参。 示例代码如下 复制代码 代码如下: #include iostream   using  namespace  std;  int  main ()   {  int  a;  cin a;  cout cin .rdstate()endl;  cin .clear(ios ::goodbit);  cout cin .rdstate()endl;  system(“pause”);  } 通常当我们发现输入有错又需要改正的时候使用clear()更改标记为正确后同时也需要使用get()成员函数清除输入缓冲区以达到重复输入的目的。 示例代码如下 复制代码 代码如下: #include iostream   using  namespace  std;  int  main ()   {  int  a;  while (1)  {  cin a;  if (!cin )//条件可改写为cin.fail()  {  cout ”输入有错!请重新输入”endl;  cin .clear();  cin .get();  }  else   {  cout a;  break ;  }  }  system(“pause”);  } 最后再给出一个对文件流错误标记处理的例子巩固学习代码如下 复制代码 代码如下: #include iostream   #include fstream   using  namespace  std;  int  main ()   {  ifstream myfile(“c://1.txt”,ios_base::in,0);  if (myfile.fail())  {  cout ”文件读取失败或指定文件不存在!”endl;  }  else   {  char  ch;  while (myfile.get(ch))  {  cout ch;  }  if (myfile.eof())  {  cout ”文件内容已经全部读完”endl;  }  while (myfile.get(ch))  {  cout ch;  }  }  system(“pause”);  }
http://www.w-s-a.com/news/649733/

相关文章:

  • h5 建站网站 移动端重庆潼南网站建设价格
  • 商企在线营销型网站怎么做时光网站
  • 网站建设方案论文1500竞价托管哪家便宜
  • 使用cdn的网站宣武网站建设
  • 营销型网站怎么建设企业网站Wap在线生成
  • 网站建设服务费应该做到什么科目广州网页制作服务商
  • 网站显示500错误怎么解决方法店面设计模板
  • 网站备案icp文化传媒有限公司
  • 北京企业建站模板微信公众号商城怎么制作
  • 制作网站 公司简介大型做网站的公司
  • 北京网站开发建设南昌网站小程序开发
  • 网站如何做ip签名图片宁波互联网
  • 中山小榄网站建设长沙网络营销品牌排名
  • 推广优化厂商联系方式网站推广教程优化整站
  • 为外国企业做中文网站建设网站建设单位哪家好
  • 生物制药公司网站模板有没有专业做steam创客的网站
  • 福田做棋牌网站建设找哪家效益快弄一个微信小程序多少钱
  • 成都哪家做网站建设比较好做推广赚钱的网站
  • 常州专门做网站的公司有哪些网页模板下载网站10
  • linx服务器怎么做网站做长页网站
  • 汕头网站建设sagevis服装设计公司有什么职位
  • 网站流量分析报告医院网站制作公司
  • 仿58网站怎么做邯郸网站设计多少钱
  • 广州网站制作开发wordpress中文固定连接
  • 成都网站建设公司盈利吗专门做二手手机的网站有哪些
  • 手机网站设计需要学什么wordpress读法
  • WordPress pajx天津短视频seo
  • 检察院门户网站建设情况总结深圳网站制作长沙
  • 单页导航网站模板搜索量查询
  • 如何在一个地方建设网站营销型定制网站