c++基础语法(一):string操作,access,double转char ,int64_t转char,释放指针.

(准备挑战赛新补充的一些语法知识 9.12)

1.string转数字  stoi   字符串转atoi atol atoll atof

2. access:检测指定文件的属性:

 this->load_csv.tokenname="/home/sunyi/sy/c++/TCP/test/read_csv/token.csv";

 if(access(this->load_csv.tokenname.c_str(),0)==-1)
    {
            std::cout<<"exist"<<std::endl;
            exit(0);
    }

/××access中mode有几种取值:
00——只检查文件是否存在
02——写权限
04——读权限
06——读写权限×/
/××如果答案是积极的,返回0 否则返回1××/

3.double,int64_t型转成8字节存储

double f=1.0;
char s[8];
memcpy(s,&f,8);//小端模式  然后需要转成大端



int64_t timestamp=90909090;
char s[8];
for(int i=0;i<8;i++)
{
   int64_t temp=timestamp<<(8*i);
   s[i]=temp>>56;
}

4.读文本的几种方式

1.c
fscanf(fp,format,address);//可以配合feof使用

2.c++流的形式
ifstream file();
s=fgetline(file);//返回string
//如果是csv格式的话可以采用如下语法读取每一行中的各个元素
std::stringstream ss(s);
result=fgetline(ss,',');


3.string 的几种操作
   1)访问元素
      s[index]即可
   2) 提取字符串
      s.c_str()
   3) 子集
      s.substr(a,b)

5.释放指针内存

用delete命令处理某个指针,说是把那个指针删除了是不正确的。

delete命令指示释放了那个指针原本所指的那部分内存而已。被delete后的指针p的值(地址值)并非就是NULL,而是随机值。

也就是被delete后,如果不再加上一句p=NULL,p就成了“野指针”,在内存里乱指一通。

6.Iplimage转Mat

      cvarrytoMat

猜你喜欢

转载自blog.csdn.net/weixin_38907330/article/details/81511624