ICode9

精准搜索请尝试: 精确搜索
  • IP转int的另一种高效方式 C++2021-01-23 09:04:25

    #include <iostream> typedef unsigned char byte; typedef unsigned int uInt32; #if 0 // 常规方法 bool bytesToInt(uInt32& uIP, byte byIP[4]) { uIP = byIP[3] & 0xFF | (byIP[2] & 0xFF) << 8 | (byIP[1] & 0xFF) << 16 | (byIP[

  • C++ 解析 TFRecord 文件 using Protocal Buffer2021-01-15 16:01:04

    最近实习中遇到了C++解析TFRecord的需求,搜索一圈发现虽然tensorflow C++ API中提供了相应的接口,但是编译C++版本的Tensorflow并不容易&很不清真,把他当做自己的项目的依赖就更离谱了。内网外网找了很久都发现没有相关的教程,于是调研了一圈,写了个自定义的解析脚本,只需要安装了解prot

  • 从PHP底层源码看 PHP 7 数组的实现2020-12-31 09:34:21

    从PHP底层源码看 PHP 7 数组的实现 本文所用源码为 PHP 7.4.4 的版本。 PHP 7 数组概述 这里主要关注两个点: key 可以是整数,也可以是字符串。Float、Bool、Null 类型的 key 会被转换为整数或者字符串存储,其他类型的会报错。 遍历数组时,数组元素按照其 key 添加的顺序依次取出。

  • bitops.h2020-12-18 13:03:11

    /* * Copyright (c) 2020 jindongsheng1024@163.com * * SPDX-License-Identifier: Apache-2.0 */ #ifndef _BITOPS_H_ #define _BITOPS_H_ #ifdef __cplusplus extern "C" { #endif #include <stdint.h> #define OP_BITS_PER_LONG 32 #define OP_BIT

  • 【C++】C++ const关键字用法总结2020-12-17 17:33:19

    C++ const 关键字用法总结 概述 const是constant的缩写,本意是不变的,不易改变的意思。在C++中是用来修饰内置类型变量,自定义对象,成员函数,返回值,函数参数。 C++ const允许指定一个语义约束,编译器会强制实施这个约束,允许程序员告诉编译器某值是保持不变的。如果在编程的过程中有

  • stm32 freertos 任务通知2020-12-09 12:30:05

    FreeRTOS 从 V8.2.0 版本开始提供任务通知这个功能,每个任务都有一个 32 位的通知值,在大多数情况下,任务通知可以替代二值信号量、计数信号量、事件组,也可以替代长度为 1的队列(可以保存一个 32 位整数或指针值)。 代替消息队列 /* FreeRTOS头文件 */ #include "FreeRTOS.h" #includ

  • 一般只用 20% 的代码就可以解决 80% 的问题。但要想解决剩下 20% 的问题的话,则需要额外 80% 的代码。2020-12-07 12:01:49

    sniper/thought.md at master · bilibili/sniper https://github.com/bilibili/sniper/blob/master/thought.md RPC 协议 有了语言,接下来就要确定通信协议。首先不要使用 REST 风格接口。 REST 中看不中用。REST 的核心是资源和状态,所有的变更都对应状态的转变。 对于简单的场景,R

  • WMI_04_常见的WMI类的属性2020-12-02 18:33:00

    目录 一、WMI硬件系列 1.1 CPU 处理器(Win32_Processor) 1.2. 内存信息(Win32_PhysicalMemory) 1.3 硬盘参数说明(Win32_DiskDrive) 1.4 主板参数(WIN32_baseboard) ​​​​​​​1.5 网络适配器(Win32_NetworkAdapter) ​​​​​​​1.6. 串口(Win32_SerialPort) ​​​​​​​1.7.

  • 基于hal库实现stm32内部flash的读取2020-11-26 20:34:43

    stm32的内部flash在我们实际运行的时候。很多时候并没有用完,还有许许多多的空闲内存,因此可以利用内部flash存储一些数据。我使用的是stm32f407vet6 ,所以就用这个芯片来进行演示。 认识内部的存储划分。 这是芯片内部的存储划分,需要注意的是,我们自己的程序也是存储在这些位置,所以

  • MMU2020-11-12 12:02:11

    MMU,Memory Management Unit,存储管理单元。输入一个虚拟地址和一个地址映射表的基地址,输出一个物理地址。 图1. 获取下一级页表的基地址的过程 PGT_L1_BASEPGT_L1_BASE......PGT_L0_BASEPGT_L0_BASEOFFSET_0OFFSET_0PGT_L0PGT_L0......PGT_L1PGT_L1PGT, Page TableL0, Level-0PGT,

  • Mach-O笔记2020-11-07 04:00:45

    Mach-O是一种可执行文件,在Mac电脑上有很多不同的可执行文件,如打包的shell脚本,通c或者c++编译生成的可执行文件,还有一些是通过开发工具,如XCode创建出来的,对于不带附件信息的可以执行文件(如bundle,info.plist)直接点击就能运行,因为这部分执行文件是基于Command-Tool生成的,

  • PHP7内存性能优化的思想精髓2020-11-03 09:03:37

    前面我们讨论了内存的工作原理,也进行了一些性能相关的测试。那么今天开始我们来看几个在实践中的应用。首先我们先从PHP开始。 2015年,PHP7的发布可以说是在技术圈里引起了不小的轰动,因为它的执行效率比PHP5直接翻了一倍。PHP7在内存方面,你是否知道作者都进行了哪些优化?你是否能够

  • client: c#+protobuf, server: golang+protobuf2020-10-13 06:31:36

    前段时间看到一篇博文《可在广域网部署运行的即时通讯系统 -- GGTalk总览(附源码下载)》,他是用C#实现的即时通讯系统,功能强大,界面漂亮。 就想用golang重写服务端,把代码下载回来,发现通信框架用的是ESFramework,我没用过也不知道ESFramework的协议,重写是不行的了,只能把原作者的客户端

  • 更改C编译器的缺省字节对齐方式__align(),__attribute((aligned-(n))),#pragma-pack(n)2020-10-05 14:02:47

    在缺省情况下,C编译器为每一个变量或是数据单元按其自然对界条件分配空间。一般地,可以通过下面的方法来改变缺省的对界条件: 使用伪指令#pragma pack (n),C编译器将按照n个字节对齐。 使用伪指令#pragma pack (),取消自定义字节对齐方式。 另外,还有如下的一种方式: __attribute((ali

  • 共享内存原理与VCS监控采集实战2020-09-28 14:50:48

    作者:cluo 一、前言 共享内存广泛用于Redis,Kafka,RabbitMQ 等高性能组件中,本文主要提供一个共享内存在广告埋点数据采集的实战场景。 二、共享内存原理 1、原理 在Linux中,每个进程都有属于自己的进程控制块(PCB)和地址空间(Addr Space),并且都有一个与之对应的页表,负责将进程的虚拟地址

  • Golang数据类型详解--整型2020-08-28 07:01:48

    整型 Go 语言提供了 11 种整型,如下列表所示。 类型 说明 byte 等同于 uint8 int 依赖于不同平台下的实现,可以是 int32 或者 int64 int8 [-128, 127] int16 [-32768, 32767] int32 [-2147483648, 2147483647] int64 [-9223372036854775808, 9223372036854775807]

  • MIT 6.828 Lab 03:User Environments ( Part B )2020-08-18 15:31:37

    PartB :Page Faults, Breakpoints Exceptions, and System Calls 目录PartB :Page Faults, Breakpoints Exceptions, and System CallsHandling Page FaultsExercise 05Exercise 06QuestionSystem callsExercise 07系统调用流程回顾Exercise 08Page faults and memory protectionE

  • 蓝帽杯-wp2020-08-16 21:04:30

    所有做出的题解都放出来了,本来想先研究python那题再发的。。结果没出来 一家人整整齐齐 & 二进制爷爷,一题进复赛 签到 gif分解帧,再看不同色域通道。得到flag sudo 做对九宫格3次,在github上找到了九宫格算法 import numpy as np from pwn import * import time def solve(m): i

  • 文件转数组2020-08-03 15:32:05

    #include "stdio.h" #include "string.h" #define  uint8_t        unsigned char #define  uint16_t       unsigned short #define  uint32_t       unsigned int uint8_t File_Name[128] = {0}; uint8_t File_Name2[128] = {0}; #def

  • centos7 安装测试clickhouse2020-07-11 09:41:15

    系统要求 ClickHouse可以在任何具有x86_64,AArch64或PowerPC64LE CPU架构的Linux,FreeBSD或Mac OS X上运行。 虽然预构建的二进制文件通常是为x86 _64编译并利用SSE 4.2指令集,但除非另有说明,否则使用支持它的CPU将成为额外的系统要求。这是检查当前CPU是否支持SSE 4.2的命令: $ grep

  • RTSP/RTMP拉流端录像设计要点2020-06-27 14:08:25

    很多开发者提到,拉取的摄像机(一般RTSP流)或RTMP流,如果需要录制,需要考虑哪些因素,本文以大牛直播SDK的Windows平台拉流端录像为例(github),做个简单的介绍: 1. 基础文件名设定 一般来说,本地录像的话,不可能每个文件单独命名,这个时候,需要考虑如文件名前缀、文件名是否添加日期、是否添加时间

  • STM32查看当前中断信息的方法2020-06-27 13:42:34

    在开发STM32时,我们经常会遇到一些需要知道系统当前中断信息的情况,比如某个中断是否被使能、是否pending、是否正在执行该中断等。如果是在调试环境,那么可以直接查看中断信息,KEIL中的操作方法如下。所有中断的Enable状态、Pending状态(已经发生但是还没有执行到中断)、Active状态(

  • 自学《STM32不完全手册》的笔记三2020-06-22 12:40:09

    自学《STM32不完全手册》的笔记三 MDK固件库快速组织代码 例:初始化某个 GPIO 端口 定义 GPIO 初始化函数为: void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct); 函数的入口参数是 GPIO_TypeDef 类型指针和 GPIO_InitTypeDef 类型指针,go to definiti

  • 【实验室乱记】基于stm32的采集Adc与SD卡储存2020-06-20 10:39:14

    杂序实验室简介调用的资源:Adc调用的外设:SD卡实现过程AdcSD卡主函数代码 序 这篇文章向大家介绍下基于STM32F4的adc采集与SD卡储存 实验室 学长的要求是利用STM32采集Adc值转存于SD中 后利用Matlab进行快速傅里叶变化分析频率(FFT天下第一 ) 简介 ST(意法半导体)推出了以基于

  • 在主机和网络字节顺序之间转换值 的4个函数 ------- htonl, htons, ntohl, ntohs2020-06-18 17:02:46

    简单的说这些函数就是: 将一个数的高低位互换 主机字节顺序成为小端,网路字节顺序成为大端。 原型: #include <arpa/inet.h> uint32_t htonl(uint32_t hostlong); uint16_t htons(uint16_t hostshort); uint32_t ntohl(uint32_t netlong); uint16_t ntohs(uint16_t netshort); 函数描

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有