不用时间种子,用初始化内存地址做出6位的验证码!
来源:互联网 发布:建筑动画制作软件 编辑:程序博客网 时间:2024/05/20 20:48
/*************************************************
File name : random.c
Create date : 2016-07-13 05:18
Modified date : 2016-07-13 05:18
Author : WangJiaXiang
Email : 952519932@qq.com
***********************************************/
#include<stdio.h>
int main(int argc,char **argv)
{
double a;
int b=1,c=4,tiao=0;
char buf[8],test[6];
sprintf(buf,"%x",&a);//把初始化的 内存a 以16进制的方式 强制转换为字符串
while(b<7)
if( buf[++b]>='a' && buf[b]<='z')//由于16进制最大值为 小写 f ,把部分小写字母的 转换为大写
{
tiao++;
if(tiao==2 || tiao==4)//对出现的 第二位 和第四位的 小写字母 转换成大写
{
buf[b]-=32;
}
}
b=1;
while(b<7)
printf("%c",buf[++b]);
printf("\n");
printf("please input code\n");
b=0;
while(c)
{
test[b]=getchar();
if(test[b]!=buf[b+2])
{
printf("input error,you have left %d times\n",--c);
b=0;
while( (test[b]=getchar()) != '\n');
}
else if( test[b] == buf[b+2])
{
b++;
if(b>=6)
{
printf("Hellow World !!!\n");
return 0;
}
}
}
printf(" boom!!! \n");
return 0;
}
0 0
- 不用时间种子,用初始化内存地址做出6位的验证码!
- C#做出验证码的例子
- 不用session的验证码
- 种子填充算法在验证码识别中的的应用
- 种子填充算法在验证码识别中的的应用
- 种子填充算法在验证码识别中的的应用
- 种子填充算法在验证码识别中的的应用
- 输出64位系统的内存地址
- 二位数组中的指针初始化时的地址
- OC将对象赋给对象,及对象用对象初始化的内存地址变化
- 不用正则或其它辅助类的验证email地址(java)
- 6位验证码生成
- 不用submit的validate验证
- Struts2实现的6位数字的验证码程序
- 下载没有种子链接用特征码下片的方法
- 下载没有种子链接用特征码下片的方法
- 要访问1KB的内存为啥需要10位地址线,而不是13位?
- 制作验证码的另外一种方法(不用控件)
- QTP随笔
- AJAX 跨域请求 - JSONP获取JSON数据
- adb Read-only及删除文件夹相关问题
- JAVA中三种URL连接方法
- 在servlet的init方法中使用getServletConfig、getServletContext时发生nullpointerexception
- 不用时间种子,用初始化内存地址做出6位的验证码!
- Android开发使用的常见第三方框架汇总
- JS实现的MAP
- java 通过反射获取注解
- 百度地图API详解之驾车导航
- Effective Java 学习笔记(一)
- Ubuntu下提示/usr/bin/env: node: 没有那个文件或目录
- 最简单的基于librtmp的示例:接收(RTMP保存为FLV)
- 彻底明白Zigbee术语——群集(Cluster)、端点(EndPoint)等