Giter Club home page Giter Club logo

blog's People

Contributors

hackerchai avatar

Watchers

 avatar  avatar

blog's Issues

10分钟解惑C语言指针 :: Hackerchai's IT Blog

https://blog.hackerchai.com/post/c-language-pointer/

前言 最近才在备战OI,我之前对C指针的理解是:指针本身是一块内存,它保存了一块内存的地址,但是经常对一些概念有混淆,于是今天就细致的研究了一下指针的详细用法和原理。
指针 先看这样一段代码:
#include <stdio.h>int main() { int i = 10; int * p; printf("p的地址:%d\n",&p); printf("未初始化时p的内容:%d\n",p); p = &i; printf("--初始化p完毕--\n"); printf("p里面保存的地址:%d\n",p); printf("p指向的内存的内容:%d\n",*p); printf("p的大小:%d\n",sizeof(p)); printf("p指向的内存大小:%d\n",sizeof(p)); return 0; } 输出结果为:
p的地址:1439276008 未初始化时p的内容:0 --初始化p完毕-- p里面保存的地址:1439276020 p指向的内存的内容:10 p的大小:8 p指向的内存大小:4 这就是指针的基本使用,可用下图来说明: 指针与数组 首先看这两个声明语句
char (a) [100]; char a [100]; 第一个是声明了一个指向有100个char元素的数组的指针(注意和指向数组首地址的char型指针分开);第二个是声明了一个有100个char
元素的数组,数组里面装的是char *。 为了理解,我们来看这样一段代码:
#include <stdio.h> int main() { int arr[10][100]; printf("sizeof(arr[0]) = %lu\n", sizeof(arr[0])); printf("sizeof(arr[0][0]) = %lu\n", sizeof(arr[0][0])); int *p; int (*q)[100]; p = &arr[0][0]; q = &arr[0]; printf("p = %d\n",p); printf("q = %d\n",q); printf("sizeof((*p)) = %lu\n", sizeof((*p))); printf("sizeof((*q)) = %lu\n", sizeof((*q))); p++; q++; printf("after add 1, p = %d\n", p); printf("after add 1, q = %d\n", q); return 0; } 这端代码运行后结果如下:

Arduino智能蓝牙小车Dev1完工

https://blog.hackerchai.com/arduino-bluetooth-car/

经过三天的努力,终于把Arduino蓝牙小车完工了。整个制作过程挺艰难,又要躲过学校老师的围追堵截,又要高效的完成各个工作。这是我加入东北育才学校机器人实验室之后的第一个作品。在龚鹏老师的帮助下,我完成了整个制作。整个小车的原理很简单,利用Arduino的串口TXD,RXD和蓝牙模块通信,然后通过motor shield来驱动直流减速电机。看起来挺容易,但对于我在这种第一次使用蓝牙模块的人,还是蛮

Meltdown漏洞解析及Linux开源POC演示

https://blog.hackerchai.com/meltdown-exploit-on-linux-opensource/

概述2018年1月4日,Jann Horn等安全研究者披露了”Meltdown”(CVE-2017-5754)和”Spectre”(CVE-2017-5753 & CVE-2017-5715)两组CPU特性漏洞。 据悉,漏洞会造成CPU运作机制上的信息泄露,低权级的攻击者可以通过漏洞来远程泄露(浏览器形式)用户信息或本地泄露更高权级的内存信息。实际攻击场景中,攻击者在一定条件下可以做到,泄

Python微信跳一跳辅助原理解析

https://blog.hackerchai.com/python-weixin-jumpjump-principle-analysis/

微信跳一跳2017 年 12 月 28 日下午,微信发布了 6.6.1 版本,加入了「小游戏」功能,并提供了官方 DEMO「跳一跳」。这是一个 2.5D 插画风格的益智游戏,玩家可以通过按压屏幕时间的长短来控制这个「小人」跳跃的距离。分数越高,那么在好友排行榜更加靠前。辅助脚本wechat_jump_game是一个python2编写的辅助外挂。通过Python的图片操作库分析手机实时的截图,通过图

ESNI和加密DNS - 保护信息隐私的最后一块拼图

https://blog.hackerchai.com/encrypted-sni-anti-censorship/

ESNI随着TLS1.3的发布,让该协议成为有史以来最安全、也是最复杂的TLS协议。在该协议之中,有很多的对于以往协议安全漏洞的修复,包括废弃RSA启用新的秘钥交换机制PSK等等。而Encrypted SNI作为一个TLS1.3的扩展协议用来防止传统的HTTPS流量受到ISP或者陌生网络环境的窥探以及一些网络审查。在过去,由于HTTPS协议之中Server Name Indication - SN

Meltdown&Specture漏洞完全修复教程

https://blog.hackerchai.com/meltdown-and-specture-repair-on-windows-and-linux/

概述2018年1月4日,Jann Horn等安全研究者披露了”Meltdown”(CVE-2017-5754)和”Spectre”(CVE-2017-5753 & CVE-2017-5715)两组CPU特性漏洞。 据悉,漏洞会造成CPU运作机制上的信息泄露,低权级的攻击者可以通过漏洞来远程泄露(浏览器形式)用户信息或本地泄露更高权级的内存信息。 实际攻击场景中,攻击者在一定条件下可以做到

为一加7无损转换F2FS文件系统

https://blog.hackerchai.com/enable-oneplus7-f2fs/

F2FS为何物F2FSF2FS(英语:Flash-Friendly File System)是一种闪存文件系统,主要由金载极(韩语:김재극)在三星集团研发,适合Linux内核使用[3]。此文件系统起初是为了NAND闪存的存储设备设计(诸如固态硬盘、eMMC和SD卡),这些设备广泛存在于自移动设备至服务器领域。三星应用了日志结构文件系统的概念,使它更适合用于存储设备。特性多头日志(Multi-hea

DS1302温度LED时钟

https://blog.hackerchai.com/ds1302-ds18b20-stc15-led-clock/

回顾面对即将到来的高三,不得不停止了在学校机器人的学习生涯,在这学期我和我的组员们共同完成了这个小钟从电路设计,焊接,再到编程调试的过程。我们将之前学习到的单片机和电路知识运用起来,虽然经历了不计其数的Bug和坎坷,可是就是在这样痛苦的过程中我们不知不觉中成长了许多,收获了更多的实战经验。 提出一直以来,我多数在开发软件,偶尔碰碰Arduino实现点小功能,幸运的是我的高中有机器人实验室,于是我们

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.