![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
白57
这个作者很懒,什么都没留下…
展开
-
位运算:获取、设置、清除特定的位
最基本的操作包括获取位、设置位和清除位。获取位可以利用&1:&(0x1 << pos)设置位可以利用|1: | (0x1 << pos)清除位可以利用&0: &(~(0x1 << pos))判断某位是否相同用^:(A & (0x1 << pos)) ^ (B & (0x1 << pos))...原创 2021-09-16 21:32:46 · 673 阅读 · 0 评论 -
记录lib的一个小知识点
//附加依赖项=========================//#pragma comment(lib,“CLS_CMD5.lib”)//#pragma comment(lib,“CLS_DataMD5.lib”)//#pragma comment(lib,“TriCDT.lib”)#pragma comment(lib,“CLS_CMD5.lib”)相当于在附加依赖项中加上CLS_CMD5.lib记录总结:附加包含目录:头文件路径(error:未 声明/定义 的标识符)附加库目录原创 2021-04-28 15:36:16 · 99 阅读 · 0 评论 -
strcmp
strcmp函数是string compare(字符串比较)的缩写,用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数。转自:百度百科...转载 2021-03-25 14:09:45 · 76 阅读 · 0 评论 -
C++/C++11中std::runtime_error的使用
std::runtime_error:运行时错误异常类,只有在运行时才能检测到的错误,继承于std::exception,它的声明在头文件中。std::runtime_error也用作几个运行时错误异常的基类,包括std::range_error(生成的结果超出了有意义的值域范围)、overflow_error(上溢)、underflow_error(下溢)、system_error(系统错误)。std::runtime_error类没有默认构造函数,有两个声明为explicit的构造函数,一个接收参数为c转载 2021-03-25 08:38:19 · 9411 阅读 · 0 评论 -
0 、 ‘0‘ 、 “0“ 、 ’\0’ 区别
① ‘0’ 代表 字符0 ,对应ASCII码值为 0x30 (也就是十进制 48)② ‘\0’ 代表 空字符(转义字符)【输出为空】, 对应ASCII码值为 0x00(也就是十进制 0), 用作字符串结束符③ 0 代表 数字0, 若把 数字0 赋值给 某个字符,对应ASCII码值为 0x00(也就是十进制0)④ “0” 代表 一个字符串, 字符串中含有 2个字符,分别是 ‘0’ 和 ‘\0’下面补充说明转载 2021-03-24 19:52:42 · 9752 阅读 · 0 评论 -
关于stringstream
转载:https://blog.csdn.net/liitdar/article/details/825980391 概述 定义了三个类:istringstream、ostringstream 和 stringstream,分别用来进行流的输入、输出和输入输出操作。本文以 stringstream 为主,介绍流的输入和输出操作。 主要用来进行数据类型转换,由于 使用 string 对象来代替字符数组(snprintf方式),就避免缓冲区溢出的危险;而且,因为传入参数和目标对象的类型会被自动推导出来,转载 2021-03-24 19:34:47 · 73 阅读 · 0 评论 -
const char *ptr与char const *ptr
总结:const char *ptr:指针指向字符型常量。不能用ptr来修改所指向的内容,但并不意味着它指向的值实际上就是一个常量,而只是意味着对ptr而言,这个值是常量。const char *ptr与char const *ptr一样。char *const ptr:定义一个指向字符的指针常数,即const指针,不能修改ptr指针,但是可以修改该指针指向的内容。转自:参考地址...转载 2021-03-24 17:02:55 · 426 阅读 · 0 评论 -
__DATE__和__TIME__
这两个就是字符串常量,当字符串用就行。DATE:当前的编译日期TIME:当前编译时间;#include<stdio.h>#include<string.h>int main(){ printf("%s,%s\n",__DATE__,__TIME__); printf("长度DATE=%d,TIME=%d\n",strlen(__DATE__),strlen(__TIME__)); return 0;}转自:原地址...转载 2021-03-24 16:31:15 · 510 阅读 · 0 评论 -
fsream中的ifstream
ofstream是从内存到硬盘,ifstream是从硬盘到内存以下代码:voidread_noah_imagelist (std::string const& filename, StringVector& files){ std::ifstream in(filename.c_str(), std::ios::binary); if (!in.good()) { ... } ... in.close();}i转载 2021-03-24 15:26:55 · 141 阅读 · 0 评论 -
while(true)
while(true)作为无限循环,经常在不知道循环次数的时候使用,并且需要在循环内使用break才会停止。MVE读取图像文件时用到的部分代码while (true) { std::string file; std::getline(in, file); if (file.empty()) break; files.push_back(file); }...原创 2021-03-24 14:56:22 · 1176 阅读 · 0 评论 -
exit()函数
所在头文件:stdlib.h(如果是”VC6.0“的话头文件为:windows.h)功 能: 关闭所有文件,终止正在执行的进程。exit(0)表示正常退出,exit(x)(x不为0)都表示异常退出,这个x是返回给操作系统(包括UNIX,Linux,和MS DOS)的,以供其他程序使用。stdlib.h: void exit(int status);//参 数status,程序退出的返回值转自:百度百科...转载 2021-03-24 14:50:54 · 86 阅读 · 0 评论 -
define与typedef的区别
转自:typedef和#define的用法与区别一、typedef的用法在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像:typedef int INT;typedef int ARRAY[10];typedef (int*) pINT;typedef可以增强程序的可读性,以及标识符的灵活性,但它也有“非直观性”等缺点。二、#define的用法#define为一宏定义转载 2021-03-24 13:57:55 · 637 阅读 · 0 评论 -
cerr、clog与cout
cerr是标准错误输出流,是一个iostream对象。默认情况下,写到cerr的数据是不缓冲的。cerr:不被缓冲,也就说错误消息可以直接发送到显示器,而无需等到缓冲区或者新的换行符时,才被显示。比如,你的程序遇到调用栈用完了的威胁(无限,没有出口的递归)。你说,你到什么地方借内存,存放你的错误信息?所以有了cerr。其目的,就是在你最需要它的紧急情况下,还能得到输出功能的支持。缓冲区的目的,就是减少刷屏的次数——比如,你的程序输出圣经中的一篇文章。不带缓冲的话,就会每写一个字母,就输出一个字母转载 2021-03-24 14:41:42 · 167 阅读 · 0 评论