c++
姚贤贤
这个作者很懒,什么都没留下…
展开
-
C语言在用户模式使用NT函数
C语言要使用NT函数并不像使用库函数那么简单,下面介绍一下使用方法,以NtSetInformationFile为例:#include <windows.h>#include <stdio.h>//因为NtSetInformationFile方法要用到FILE_INFORMATION_CLASS的值,所以这里全部枚举出来//当然你也可以直接使用1,2,3,这样值代替,只是这样定义以后在后面使用更接原创 2017-09-04 19:33:21 · 2418 阅读 · 0 评论 -
C语言main函数和程序执行学习笔记
main函数 正确写法 int main(void) int main(int argc,char ** argy) int main(int argc,char* argy[]) 错误写法,不标准(运行起来没有任务问题,但是其实某些编译器不行,或者父进程拿不到这样的返回值) void main() float main()main函数返回给谁 1.函数为什么需要返回值: 返回值是转载 2018-01-28 19:27:02 · 732 阅读 · 0 评论 -
C语言枚举学习笔记
数据重采样:分为升采样,降采样升(就是将12个月可以细化到每天) 解决控制方法: 1.ffill 空值取前面的值 2.bfill 空值取后面的值 3.interpolate 线性取值(就是比如1-5连城一条线,然后平均填充值)降(就是将每天粗化到12个月) 解决方案 1.sum 2.求均值pandas滑动窗口: 解决什么问题: 解决只拿出一点过于绝对的问题,比如说2017-01-5原创 2018-01-28 19:20:18 · 213 阅读 · 0 评论 -
C语言大小端模式
大小端模式1 大端模式(big endian)和小端模式(little endian) (1)最早出现在小说的词,和计算机无关 (2)后来用于计算机通信,在串行通信中,一次只能发送一个字节,这样发送一个int就有问题。 规则就是发送方和接受方必须按照同样的字节顺序来通讯,否则会出现错误,这就是通信系统中的大小端模式。 (3)现在我们讲的这个大小端模式,更多是指计算机存储系统的大小端。转载 2018-01-07 12:56:23 · 1643 阅读 · 0 评论 -
C语言预处理
由源码到可执行的程序 源码-》(编译)-》elf可执行程序 源码-》(编译)-》目标文件.o-》(链接)-》elf可执行程序 源码-》(编译)-》汇编文件.s-》(汇编)-》目标文件.o-》(链接)-》elf可执行程序 源码-》预处理-》预处理过的.i文件-》(编译)-》汇编文件.s-》(汇编)-》目标文件.o-》(链接)-》elf可执行程序//这才是真正的C语言预处理:用的预处理器转载 2018-01-07 12:47:34 · 247 阅读 · 0 评论 -
C语言共用体
union haha { int a; char b; }struct hehe { int a; char b; }int main() { struct hehe s1; s1.a = 19; printf(s1.b); //b = 0,a和b是独立的空间 union haha h1;原创 2018-01-07 12:37:15 · 209 阅读 · 0 评论 -
C语言在内存中数据的存储位置
char a[] = “linux” 占6个字节,a存储的是首地址,“linux”可以在栈,也可以在堆中 char *p = “linux” 占10个字节,p指针变量占4字节,里面保存的是后面字符串的地址,“linux”占6个字节,存储在代码段。但字符串要更加灵活: linux栈中: char a[] = “linux” char *p = a; 在代码段: char *p =原创 2018-01-07 11:24:37 · 3064 阅读 · 0 评论 -
C语言和内存结合漫谈
内存管理最终是操作系统完成的。 操作系统提供多种机制来让我们应用程序使用内存。 程序在操作系统处登记这块内存的临时使用权限。(别人不能使用),然后使用内存,释放内存(向操作系统归还这块内存的使用权限) C语言获取内存的三种情况:栈,堆,数据区(.data),代码段,bss段栈的详解: 局部变量int a 运行时自动分配,自动回收,程序员不需要手工干预。 反复使用:栈内存在程序中就是一块空转载 2017-11-05 12:25:35 · 295 阅读 · 0 评论 -
内存漫谈
内存编址和寻址,内存对齐 内存编址方法: 内存逻辑上就是一个一个个字,格子上有编号,编号就是地址 在程序运行时,CPU只认识内存地址,不关心地址所代表的空间在哪里 关键:内存编址是以字节为单位的 我随便说一个数字7,说这个数字是一个内存地址,然后问你这个内存地址对应的空间有多大?答案是固定的,就是一个字节内存和数据类型的关系: C语音的基本数据类型:char,short,int,long转载 2017-11-05 11:10:29 · 194 阅读 · 0 评论 -
内存对齐方式
一般我们编程的时候short s=2,int i=4,char c=’a’在内存中是如何对齐的呢? 在32位系统中: 在64位系统中: (1)以32位系统为例,short后面还有两个字节,为啥char c=’a’没有放到那个位置? 因为这是内存对齐的一种方式,在32位系统中默认为4字节对齐。 (2)为啥使用4字节对齐? 因为32位系统CPU一次读取内存为32位,4字节(64位系统原创 2017-09-02 12:19:00 · 563 阅读 · 0 评论 -
文件加密CryptEncrypt和导出密钥CryptExportKey学习笔记
刚刚接触C++,使用CryptEncrypt来对一个文件进行加密,代码都是MSDN上的,一开始使用起来比价困难,这里对代码解读和分享一下。#include <tchar.h>#include <stdio.h>#include <windows.h>#include <wincrypt.h>#include <conio.h>#pragma comment (lib, "advapi32"原创 2017-09-01 16:25:21 · 9583 阅读 · 0 评论 -
文件解密CryptDecrypt和导入密钥CryptImportKey学习笔记
上一篇使用了加密和导出密钥,这一篇讲解一下文件解密和导出密钥#include <tchar.h>#include <stdio.h>#include <windows.h>#include <wincrypt.h>#include <conio.h>#pragma comment (lib, "advapi32")#define KEYLENGTH 0x00800000#define E原创 2017-09-01 17:48:49 · 9395 阅读 · 0 评论 -
从内存角度解释C语言变量属性
1.存储类 描述C语言变量存储在内存中的地方。 内存有多种管理方法:栈,堆,数据段,bss段,.text段(代码段) (1)局部变量分配在栈上。 (2)显示初始化为非0的全局变量,分配在数据段 (3)没有初始化(默认为0)的全局变量分配在bss段2.作用域 描述这个变量起作用的范围3.生命周期 什么时候诞生(运行时分配内存空间给这个变量) 什么时候死亡(运行时收回这个内存空间,或者访转载 2018-01-28 19:30:07 · 614 阅读 · 0 评论