![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
nudt_qxx
这个作者很懒,什么都没留下…
展开
-
C语言中 #include 的尖括号(<>)和双引号(““)的区别
用尖括号是在宏展开的时候,系统首先从C语言函数库中找文件 用双引号的则从项目目录中找文件。所以, 在使用中,一般如果头文件是系统函数库中的, 则用尖括号,否则用双引号。原创 2022-02-08 16:25:42 · 2063 阅读 · 0 评论 -
c++ 打印获取当前系统时间时分秒
#include <iostream>#include <cstdio>#include <chrono>#include <cinttypes>#include <ctime>#include <sstream>#include <iomanip>using namespace std; int main() { std::time_t t = std::time(n原创 2021-06-17 12:36:58 · 1040 阅读 · 0 评论 -
按照正则表达式批量删除某个路径下的文件
#include <iostream>#include <cstdlib>#include <regex>#include <glob.h>bool rmConfigFile(const std::string &pattern, std::string &files_path){ std::string files_pattern = files_path + "*"; glob_t glob_result;原创 2021-04-28 15:47:06 · 572 阅读 · 0 评论 -
leetcode 381.O(1) 时间插入、删除和获取随机元素 - 允许重复
leetcode链接:O(1) 时间插入、删除和获取随机元素 - 允许重复题目描述设计一个支持在平均 时间复杂度 O(1) 下, 执行以下操作的数据结构。注意: 允许出现重复元素。insert(val):向集合中插入元素 val。remove(val):当 val 存在时,从集合中移除一个 val。getRandom:从现有集合中随机获取一个元素。每个元素被返回的概率应该与其在集合中的数量呈线性相关。API示例// 初始化一个空的集合。RandomizedCollection colle原创 2020-10-31 10:47:41 · 238 阅读 · 0 评论 -
C++ 利用正则表达式按特定字符切割字符串
// This file is a "Hello, world!" in C++ language by GCC for wandbox.#include <iostream>#include <vector>#include <regex>#include <string>std::vector<std::string> split(const std::string& input,原创 2020-10-26 15:19:21 · 3564 阅读 · 0 评论 -
C/C++11的毫秒时间戳和日期互转
先来个C++11的版本:// 需要开启c++11支持,g++ test.cpp -std=c++11 -o test// 这里默认是东八区北京时间格式#include <iostream>#include <chrono>#include <cstdio>using namespace std;std::time_t getTimeStamp()...原创 2020-04-17 10:33:26 · 7644 阅读 · 0 评论 -
undefined reference to strrev 解决方案
其实strrev这个函数不是系统库里面的,编译器不自带,要是出现undefined reference to strrev这个报错怎么办呢,那就自己写一个喽,????#include <stdio.h>#include <string.h>#include <stdlib.h>char* strrev(char *str){ char *p1, ...原创 2019-11-20 16:25:37 · 756 阅读 · 1 评论 -
C语言按照逗号截取char数组的内容
#include <stdio.h>#include <string.h>int main (){ char str[] ="1,2,99009,33455,t565,3"; printf ("Splitting string \"%s\" into tokens:\n",str); char *pch = strtok (str," ,"); wh...原创 2019-11-18 16:22:04 · 1847 阅读 · 0 评论 -
调试段错误Segmentation fault (core dumped)打印详细报错信息
在进行C/C++相关开发时候,经常会遇到段错误,这个时候比较无语的一点就是终端几乎不会输出太多有用的信息,大多数情况下打印信息如下:Segmentation fault (core dumped)有大佬专门开发了一款工具,叫做backward-cpp用来解决这个问题,该工具假设你用Cmake构建项目。步骤:首先在你项目CMakeLists.txt文件同目录克隆backward-cpp仓库...原创 2019-11-17 18:05:24 · 3571 阅读 · 0 评论 -
linux下获取毫秒时间戳的C++和C语言代码
C++版本#include <iostream>#include <chrono>using namespace std;int64_t CurrentTimeMillis(){ int64_t timems = std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono...原创 2019-08-09 16:44:31 · 6359 阅读 · 0 评论 -
使用Rust从零写操作系统 (2) —— 最小化内核
本系列博客系转载,出处: 知乎专栏:从零开始写 OS所有代码都在:https://github.com/LearningOS/rcore_step_by_step本章代码对应 commit :40ee051072e5a4b89ca188d5620e9b30f1b68b25概要本章我们将把上一章创建的 独立可执行程序 编译为内核,并和 bootloader 链接成为可以被 qemu 加载的...转载 2019-06-17 11:12:26 · 5322 阅读 · 2 评论 -
使用Rust从零写操作系统 (1) —— 独立式可执行程序
本系列博客系转载,出处: 知乎专栏:从零开始写 OS所有代码都在:https://github.com/LearningOS/rcore_step_by_step本小节代码对应 commit :bc429d04d479da60fc4bd05824a124d18c5e33ac概要由于我们的目标是编写一个操作系统,所以首先我们需要创建一个独立于操作系统的可执行程序,又称 独立式可执行程序fr...转载 2019-06-17 10:22:23 · 8496 阅读 · 3 评论 -
使用Rust从零写操作系统 (3) —— 格式化输出
本小节代码对应 commit :1b493d3bcaca2d41123adcaaa7174daaa26852a6概要通过上一章,我们已经可以在屏幕上打印简单的字符串了。但是这并不足够,本章我们将实现 rust 中最经典的宏: println! ,以便于后续的调试输出。这需要我们对 rust 的一些特性有一定的了解:宏的使用。trait 的特性。打印字符和字符串在一个文件内实现过多...转载 2019-06-19 17:34:17 · 2017 阅读 · 1 评论 -
最简单的并行计算——OpenMP的使用
简介OpenMP的英文全称是Open Multiprocessing,一种应用程序界面(API,即Application Program Interface),是一种单进程多线程并行的实现和方法,也可以认为是共享存储结构上的一种编程模型,可用于共享内存并行系统的多线程程序设计的一套指导性注释(Compiler Directive)。CPU下进行并行计算,最简单的方式就是使用OpenMP,这原创 2018-01-20 00:25:14 · 19104 阅读 · 0 评论 -
Win10下Clion配置opencv3
本人不想在爱机装一个vs2013或者vs2015这种庞然大物,可是手头要弄一个基于windows的opencv项目,就只好装了个Clion,期间踩了不少坑,记录一下。 参考网址:http://www.zerovalues.com/2017/02/20/clion-CV32-Win10-64-cfg/ 一.准备工作: 1.安装tmd-gcc:在官网链接下载最新的tmd-gcc安装包。本人是win原创 2017-04-27 23:16:49 · 7683 阅读 · 4 评论 -
Linux Bash入门:变量和数学运算
shell基本概念shell既是一种解释型编程语言,也是一个这种编程语言的解释器的名字shell是解释型语言,就是解释器会一条一条的翻译每一条语句并执行,对比之下,C语言是编译型语言,编译器把整个工程编译成可执行文件才能执行在没有续行符(\回车)的情况下,shell脚本的一条语句以”回车”为结束任何一个shell脚本程序都必须在开头用#!标识使用的shell程序,如果用的是bash,那就是#原创 2017-12-08 22:19:14 · 841 阅读 · 0 评论 -
opencv3的图像膨胀
#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//包含cv命名空间int main(){ Mat src_img = imread("D:\\1.png");//imread()函数载入图像 //从文件中读入图像,注意图像路径最好不要用相对路径,因为CLion生成的exe不在当前目录下。原创 2017-05-11 09:36:51 · 1846 阅读 · 1 评论 -
opencv3的直方图均衡化
#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//包含cv命名空间int main(){ Mat src_img = imread("D:\\1.png");//imread()函数载入图像 //从文件中读入图像,注意图像路径最好不要用相对路径,因为CLion生成的exe不在当前目录下。原创 2017-05-15 20:24:52 · 1177 阅读 · 0 评论 -
Clion下第一个opencv3程序
按照配置链接 配置好Clion和opencv3的编译环境后,再干一件事情:把opencv3下面的opencv\build\include目录下面的opencv和opencv2目录复制到GCC下的include目录。 至此,配置工作完成! 首先在Clion新建一个C++控制台程序,标准选择C++11,Cmakelists.txt内容如下:cmake_minimum_required(VERSION原创 2017-05-09 08:55:20 · 9336 阅读 · 9 评论 -
opencv3的图像腐蚀操作
#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//包含cv命名空间int main(){ Mat src_img = imread("C:\\test.png");//imread()函数载入图像 //从文件中读入图像,注意图像路径最好不要用相对路径,因为CLion生成的exe不在当前目录下原创 2017-05-09 09:57:46 · 4437 阅读 · 0 评论 -
opencv3的图像模糊处理
#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//包含cv命名空间int main(){ Mat src_img = imread("C:\\test.png");//imread()函数载入图像 //从文件中读入图像,注意图像路径最好不要用相对路径,因为CLion生成的exe不在当前目录下原创 2017-05-09 10:11:02 · 1821 阅读 · 0 评论 -
opencv3的边缘检测
#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//包含cv命名空间int main(){ Mat src_img = imread("C:\\test.png");//imread()函数载入图像 //从文件中读入图像,注意图像路径最好不要用相对路径,因为CLion生成的exe不在当前目录下原创 2017-05-09 10:11:47 · 1062 阅读 · 0 评论 -
opencv3中的imwrite函数
#include <opencv2/opencv.hpp>#include <vector>using namespace std;using namespace cv;//包含cv命名空间void createAlpha(Mat&);int main(){ Mat mat(480,360,CV_8UC4);//创建带Alpha通道的Mat createAlpha(mat);原创 2017-05-09 15:57:32 · 11122 阅读 · 3 评论 -
opencv3自定义窗口内显示多张图片
#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//包含cv命名空间int main(){ /* * * 多张图像载入后在自定义窗口内显示 */ Mat one = imread("D:\\1.png");//创建一个自定义窗口 namedWindow("原创 2017-05-09 18:14:36 · 3050 阅读 · 0 评论 -
QT 5.9和VS2015 编译QTFTP
本教程假设你已经安装好了Visual Studio 2015和QT 5.9,以及Qt Creator。 首先下载源码:git clone git://code.qt.io/qt/qtftp.git然后用Qt Creator打开src.pro。 然后选择vs2015 32位。 然后把qtftp.pro里面的:CONFIG += staticCONFIG -= shared改为:CONFIG原创 2017-07-09 17:18:56 · 3296 阅读 · 0 评论 -
QT Creator有中文出现“常量中有换行符 ”的解决办法
QT Creator在QT5.9下报错“常量中有换行符 ”,我的代码中有中文,而且在Windows 10下用微软VS编译器编译。造成这个报错的原因是MSVC编译器只支持utf-8带BOM的方式,对UTF8格式的代码文件支持不够好,而你默认的文件编码恰好是是utf-8格式。 网上找了一堆教程,最后终于找到了一个简单方便的方法: 通过Editplus文本编辑器把源代码文件编码格式为UTF-8 BOM原创 2017-07-09 13:23:09 · 12848 阅读 · 1 评论 -
C++执行Linux Bash命令
方法一:fopen()函数#include<cstdlib>#include<string>#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int N = 300;void Test(void){ char line[N]; FI转载 2017-08-18 08:49:45 · 19222 阅读 · 1 评论 -
opencv3的图片翻转flip()函数
#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//包含cv命名空间int main(){ Mat src_img = imread("D:\\1.png");//imread()函数载入图像 //从文件中读入图像,注意图像路径最好不要用相对路径,因为CLion生成的exe不在当前目录下。原创 2017-05-11 09:19:49 · 17942 阅读 · 0 评论 -
char 指针操作char数组
#include <iostream>#include <stdlib.h>#include <cstring>using namespace std;int main(){ char a[10],*p; int m=1,n=3; cout<<"please enter your string:"<<endl; cin>>a; int len=strle原创 2017-04-15 20:28:48 · 4496 阅读 · 0 评论