关闭

[置顶] OJ 系列之可怕的n的阶乘

1、问题描述计算阶乘n!是一件可怕的事情,因为当n并不是很大时,n!将是一个很大的值。例如13! = 6227020800,已经超过了我们常用的unsigned int类型的取值范围。请设计一个程序,使其可以计算100以内的数的阶乘,结果用字符串的形式输出 详细描述:接口说明原型: void CalcNN(int n, char *pOut) 输入参数: int n 需要计算的阶乘数 输出...
阅读(910) 评论(2)

[置顶] Linux Shell 之 Shell 脚本概述

1、引言 Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。 Shell 有两种执行命令的方式: 交互式(Interac...
阅读(1029) 评论(1)

[置顶] Linux 设备驱动开发目录

Linux 驱动,从最开始LED驱动开发到块设备,目前还在更新中~系统设备驱动,platform 机制,设备分层~...
阅读(1191) 评论(0)

X.509数字证书的结构与解析

1、什么叫数字签名数字签名:将报文按双方约定的HASH算法计算得到一个固定位数的报文摘要。在数学上保证:只要改动报文中任何一位,重新计算出的报文摘要值就会与原先的值不相符。这样就保证了报文的不可更改性。 将该报文摘要值用发送者的私人密钥加密,然后连同原报文一起发送给接收者,而产生的报文即称数字签名 2、什么叫数字证书数字证书:数字证书就是互联网通讯中标志通讯各方身份信息的一系列数据,提供了一种在In...
阅读(2705) 评论(5)

DH秘钥交换算法

1、DH 概述摘自https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchangeDiffie–Hellman key exchange is a specific method of securely exchanging cryptographic keys over a public channel and was one of...
阅读(918) 评论(0)

加盐密码哈希:如何正确使用 (转)

转自http://blog.jobbole.com/61872/#java 转自http://blog.csdn.net/coslay/article/details/50382252#t14 如果你是Web开发者,你很可能需要开发一个用户账户系统。这个系统最重要的方面,就是怎样保护用户的密码。存放帐号的数据库经常成为入侵的目标,所以你必须做点什么来保护密码,以防网站被攻破时发生危险。最好的办法...
阅读(665) 评论(0)

PBKDF2 算法概述

1、PBKDF2PBKDF2(Password-Based Key Derivation Function)是一个用来导出密钥的函数,常用于生成加密的密码。它的基本原理是通过一个伪随机函数(例如HMAC函数),把明文和一个盐值作为输入参数,然后重复进行运算,并最终产生密钥。如果重复的次数足够大,破解的成本就会变得很高。而盐值的添加也会增加“彩虹表”攻击的难度。2、PBKDF2函数的定义DK = PB...
阅读(1740) 评论(0)

ARM v8指令集(手册)

1、Conditional Branch - B.cond labelBranch: conditionally jumps to program-relative label if cond is true. - CBNZ Wn, labelCompare and Branch Not Zero: conditionally jumps to program-relative label i...
阅读(4763) 评论(1)

ARM 汇编指令(更新中)

1、str 指令 **- 格式** STR{条件} 源寄存器, STR指令用亍从源寄存器中将一个32位的字数据传送到存储器中。 **- 案例**STR R0,[R1],#8 ;将R0中的字数据写入以R1为地址的存储器中,并将新地址R1+8写入R1。 STR R0,[R1,#8] ;将R0中的字数据写入以R1+8为地址的存储器中。” 2、ORR指令(逻辑 或) **- 格...
阅读(307) 评论(0)

右左法则解决复杂声明(转)

现在很多IT公司的面试题都或多或少会有复杂声明的题,有一点C基础的人或许能够瞎搬乱套做对,但这样你肯定不爽,一方面显得不专业,有点自欺欺人的感觉,另一方面如果遇到更加复杂的声明就彻底傻了,本篇主要就一些复杂的声明介绍一种方法,这个有些书上也有介绍,比如《C专家编程》。个人觉得这个没有必要深究,只做了解即可,很多时候编程都很难用到,不过这也是大神和一般程序员的区别。右左法则不是C标准里面的内容,它是从...
阅读(256) 评论(0)

Linux grep基本用法与正则表达式

本文只是对于常用的grep配合正则表达式基本用法进行简单小结,如果想仔细的学习正则表达式,请访问鸟哥Linux私房菜,台湾同胞的网站是繁体中文的,需要点儿耐心。1、grep命令功能:输入文件的每一行中查找字符串。基本用法:grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名 参数说明: -a:将二进制文档以文本方式处理 -c:显示匹配次数 -i...
阅读(1486) 评论(0)

Linux 下函数栈帧分析

1、关于栈对于程序,编译器会对其分配一段内存,在逻辑上可以分为代码段,数据段,堆,栈 代码段:保存程序文本,指令指针EIP就是指向代码段,可读可执行不可写 数据段:保存初始化的全局变量和静态变量,可读可写不可执行 BSS:未初始化的全局变量和静态变量 堆(Heap):动态分配内存,向地址增大的方向增长,可读可写可执行 栈(Stack):存放局部变量,函数参数,当前状态,函数调用信息等,向地址减小的方...
阅读(3812) 评论(0)

2013 Office Word 编辑常用功能

1、Word 空格显示成点将word中所有空格显示成点,方便编辑 2、插入参考文献 一般参考文献在文中都要标注成带方括号的形式,例如“[1]”。这里交给大家一个方法一键搞定。 点击开始→替换,在查找内容处填写^e,替换处填写[^&]即可。 替换后如下图所示。3、页眉设置要求:页眉标注从论文主体部分(绪论、正文、结论)开始。页眉分奇、偶页标注,其中偶数页的页眉为 华南理工大学博士/硕士...
阅读(882) 评论(0)

浮点型数据存储方式

C语言和C#语言中,对于浮点类型的数据采用单精度类型(float)和双精度类型(double)来存储,float数据占用32bit,double数据占用64bit,我们在声明一个变量float f= 2.25f的时候,是如何分配内存的呢?如果胡乱分配,那世界岂不是乱套了么,其实不论是float还是double在存储方式上都是遵从IEEE的规范的,float遵从的是IEEE R32.24 ,而dou...
阅读(680) 评论(0)

结构体大小计算之位域字段

类和结构可包含比整型类型占用更少存储空间的成员。这些成员被指定为位域。位域成员声明符规范的语法如下: 语法 declarator : constant-expression 下面的示例声明包含位域的结构: // bit_fields1.c...
阅读(822) 评论(0)

OJ 系列之【中级】双链表基本操作

#include #define null 0 #define MAXSIZE 50struct strlnode { int data; struct strlnode *plast; struct strlnode *pnext; };void create(struct strlnode **p, int x) /*创建双链表(表头节点)*/ {...
阅读(391) 评论(1)

OJ 系列之简单错误记录(转)

摘要题目 描述: 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。 处理: 1、 记录最多8条错误记录,循环记录,对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加; 2、 超过16个字符的文件名称,只记录文件的最后有效16个... 题目 描述: 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。 处理: ...
阅读(601) 评论(0)

OJ 系列之重复的电话号码(C_C++)

解题思路:首先建立题目要求的映射关系,其次将输入的字符串进行提取,转换成电话号码,利用map容器的有序性质进行存储电话号码,电话号码自动有序,然后按照题目要求进行输出即可。#include #include "PhoneBookProcess.h" /* 功能: 检查是否有两个或多个公司拥有相同的电话号码,并统计输出输入参数: inFileName - 包含个性电话号码个数与...
阅读(1011) 评论(0)

OJ 之常规练习题(三)

1、识别有效的IP地址和掩码并进行分类统计 2、Home+Work 3、字符转换Univesity 4、渊子赛马...
阅读(1206) 评论(0)

OJ 系列之整数排序

1、问题描述实现输入一组大于等于0的整数, 根据从小到大的顺序排序后输出,排序后有连续数时, 只输出连续数中最小和最大的两个数。 一组大于等于0的整数,不考虑非法输入,各个整数之间以逗号(“,”)分隔, 输入字符串的总长度小于等于100个字节。排序后的值,各个整数之间以空格分隔。2、解题思路 1、首先从输入字符串inputStr按规律取出数字,然后存储到一个数组中(大小为50,初始值全部为...
阅读(773) 评论(0)

OJ 系列之常规练习题(二)

1、坐标移动 2、周期串问题 3、矩阵相乘2 4、最大公约数 5、整数相除 6、字符串加解密 7、水仙花 8、阿姆斯特朗数 9、大数相乘 10、整数分隔...
阅读(707) 评论(0)

OJ 系列之字节流解析

1、问题描述根据数值占用BIT数,按顺序从输入字节流中解析出对应数值,解析顺序按输入数组astElement索引升序。/* 输入:字节数组长度uiIutputLen为2;字节数组aInputByte[2]为{0x62, 0x80},对应二进制为“01100010 1 000 0000”;解析数值个数uiElementNum为2;数值[0]的值占4个bit,即astElement[0].uiEleme...
阅读(1133) 评论(0)

OJ 系列之24点游戏算法

1、问题描述2、解题思路没找到好的办法,采用穷举法。所谓穷举法就是列出4个数字加减乘除的各种可能性。我们可以将表达式分成以下几种:首先我们将4个数设为a,b,c,d,,将其排序列出四个数的所有排序序列组合(共有A44=24种组合)。再进行符号的排列表达式,其中算术符号有加、减、乘、除。其中有效的表达式有:首先列出所有有效的表达式,其中a,b,c,d的范围是1到10。下面我介绍下穷举法的主要实现,我们知道要实现24点的...
阅读(781) 评论(0)
279条 共14页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:439016次
    • 积分:6992
    • 等级:
    • 排名:第3640名
    • 原创:249篇
    • 转载:30篇
    • 译文:0篇
    • 评论:73条
    博客专栏
    最新评论