(准备挑战赛新补充的一些语法知识 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