当前位置:编程学习 > C/C++ >>

c++学习笔记,文件读取,字符串相关

1.字符串比较函数int strcmp(char* str1,char*str2)当两个字符串相同时,返回0,(而matlab的strcmp返回1)。看Asic码,str1>str2,返回值 > 0; str1< 0.
2.使用字符串流来将字符串与数字之间进行转换,如下代码段:
a)数字转字符串:
#include
#Include
string num2str(double i)
{
     stringstream ss;
     ss<<i;
     return ss.str();
}
b)字符串转数字:
int str2num(string s)
  {  
          int num;
          stringstream ss(s);
          ss>>num;
          return num;
  }
3.二进制文件求数据大小
a)二进制文件读取和写出函数:ifstream if.read(), ofstream of.write();
b) 文件流指针定位函数: if.tellg(), of.tellp();
c) 文件流指针改变函数:if.seekg(),of.seekp();
   函数参数:
     ios::beg 从流开始位置计算的位移      ios::cur 从流指针当前位置开始计算的位移      ios::end 从流末尾处开始计算的位移
d)获取文件大小代码:
// obtaining file size #include  #include  const char * filename = "example.txt"; int main () { long l,m; ifstream file (filename, ios::in|ios::binary); l = file.tellg(); file.seekg (0, ios::end); m = file.tellg(); file.close(); cout << "size of " << filename; cout << " is " << (m-l) << " bytes.\n"; return 0; }
4.字符串流成员函数str
a) stringstream ss;
string temp_str = ss.str();获取字符串流buffer中的字符串。
b)stringstream ss;
string temp_str = "aaa";
ss.str(temp_str);将字符串赋值给字符串流。
c)重复使用流要先清空流,使用ss.clear()。
补充:软件开发 , C++ ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,