- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 C++ Split
std::vector<std::string> splitString(std::string srcStr, std::string delimStr, bool repeatedCharIgnored){ std::vector<std::string> resultStringVector; std::replace_if(srcStr.begin(), srcStr.end(), [&](const char& c) ...
2021-06-08 15:31:17 97
原创 win10 C++ 飞行模式
#include <Windows.h>#include <assert.h>#include <stdio.h>static GUID const CLSID_RadioManagementAPI = { 0x581333f6, 0x28db, 0x41be, { 0xbc, 0x7a, 0xff, 0x20, 0x1f, 0x12, 0xf3, 0xf6 } };static GUID const CID_IRadioManager = { 0xdb3afb
2021-05-28 19:27:32 398
原创 LogHelper
#pragma once#include "spdlog/spdlog.h"#include "spdlog/logger.h"#include "spdlog/sinks/rotating_file_sink.h"#include "spdlog/async.h"typedef enum class log_level{ LOG_ERROR = 1, LOG_INFO, LOG_WARN, LOG_EVENT, LOG_STATUS, LOG_...
2021-01-27 11:00:03 236
原创 Python 查询设备管理器设备(cfgmgr32)
这里通过友好名称/设备描述符查询。代码如下from ctypes import *cfg = windll.cfgmgr32adv = windll.Advapi32CM_DRP_DEVICEDESC = 0x00000001 CM_DRP_HARDWAREID = 0x00000002 CM_DRP_COMPATIBLEIDS = 0x00000003 CM_DRP_UNUSED0 = 0x00000004 CM_DRP_SE.
2020-12-10 09:14:47 2423 4
原创 C++ 关闭指定的windows服务
bool CloseWindowsService(TCHAR* service) //服务名{ SC_HANDLE hSC = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS); if (hSC == NULL) { printf("OpenSCManager fail(%ld)", GetLastError()); return false; } // open ser...
2020-08-04 13:34:24 1109
原创 C++的四种类型转换
C++四种强制类型转换1. static_cast : 用于基本类型间转换,不可用于基本指针类型间转换例:int i = 4; char c = static_cast(i);2. reinterpret_cast : 用于指针类型之间转换,当浮点型指针转换成整型指针会发生数据截断。例:double a = 2.1;double *p1 = &a;int *p2 = r
2018-02-02 23:54:56 150
原创 用C 写一个输入的整数,倒着输出整数的函数,要求用递归方法
思路:要求倒叙,那么每次对10取余,取最后一位,然后/10去除最后一位,递归即可。#include void fun(int a){printf("%d",a % 10);a = a / 10;if(a {return;}fun(a);}int main(){int num;scanf("%d",&num);f
2018-01-30 21:45:44 3501
原创 数组指针与 数组名 a和&a
p3指向数组a的整块地址,定义指针p4会给出警告,char *与char *[5] 的 间接级别不同,意思大体就是&a代表的是数组的首地址,类型为char *[5],而a是数组a首元素的地址,类型为char*,但是由于&a和a的值一样,变量作为右值时编译器只是取变量的值,所以在VS2010运行并没有什么问题,而在gcc中会报错。p3+1是在p3的基础上跳过一个p3的地址大小(即5*sizeof(c
2018-01-27 16:45:43 399
原创 typedef int a[10] 与typedef int* a[10];与typedef int (*a)[10] 与 typedef int * (*a)[10]
(可能有错误的理解,请大家指出* =*)1) #define a int[10] (全错,直接文本替换)A) a[10] a[10]; B) a[10] a;C) int a[10];D) int a;E) a b[10];F) a b;G) a* b[10];H) a* b;2) typedef in
2018-01-24 21:44:39 3700
原创 c深度剖析读书笔记
switch和break的区别。1.break是终止本层循环,continue是终止本次循环。2.switch case和break配合使用,在switch case中不能使用continue,除非switch语句嵌套在循环体里。return语句不可返回指向“栈内存”的指针,因为该内存在函数体结束的时候便被释放了。return;的作用用于void函数的返
2018-01-23 17:45:18 161
原创 c语言深度剖析读书笔记
1.寄存器是中央处理器内的组成部分。可用来暂存指令、数据和地址。内存通过寄存器将数据 传输给CPU,速度快,所以可以将频繁使用的变量定义为寄存器变量,这个变量的存取速度比普通变量快。在C语言中,register变量存放在寄存器中而不是内存中,所以不能用取其地址。在C++中,register变量并不存放在寄存器中而是存在内存中。static的作用:
2018-01-22 22:55:12 218
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人