[c/c++] programming之路(16)、指针
一、调戏百度云管家
#include<stdlib.h>
#include<windows.h> _declspec(dllexport) void go(){
while(){
ShellExecuteA(,"open","http://www.baidu.com",,,);
MessageBoxA(,"因为你的百度网盘存放了大量岛国大片","来自百度的邀请",);
malloc(**);//1k=1024Byte
Sleep();
}
}
二、指针
#include<stdio.h>
#include<stdlib.h> void main0()
{
int a = ;
int b = ;
int *p = &a;
printf("*p=%d,a=%d\n", *p, a); //*p, a 等价
printf("p=%x,&a=%x\n", p, &a); //p, &a 等价
p = &b; //指针改变指向
printf("%d\n", *p);
getchar();
} void main()
{
int a = ;
int b = ;
int *p = &a; //&a是一个地址,p存放地址,是一个指针变量
int **pp = &p; //**pp 对称int,可以当作int处理
*pp = &b; // *pp int *是指针
*(*pp) = ;
printf("%d,%d\n", a,b); getchar();
}
#include<stdio.h>
#include<stdlib.h>
#include<Windows.h>
char a = 'A';
char b = 'B';
char c = 'C';
char d = 'D'; void main(){
char *p = &a;
printf("&p=%x,&a=%x,&b=%x,&c=%x,&d=%x", &p, &a, &b, &c, &d);
while ()
{
printf("我的游戏级别是%c\n",*p);
_sleep();//跨平台暂停函数
//Sleep(2000);//仅在Windows平台使用
} system("pause");
}
_declspec(dllexport) void go(){
int **p=(int**)0x4ff820;
*p=(int*)0x2f8002;
}
上面的dll文件不要建.cpp文件,建成.c文件,否则dll进行注射时会失败
指针的类型
#include<stdio.h>
#include<stdlib.h>
void main()
{
char *p1;
int *p2;
double *p3;
//所有指针在32位系统下,都是4个字节
printf("%d,%d,%d\n", sizeof(p1),sizeof(p2), sizeof(p3));
printf("%d,%d,%d\n", sizeof(*p1),sizeof(*p2), sizeof(*p3)); getchar();
}
不改变原值的情况下排序
#include<stdio.h>
#include<stdlib.h>
void main()
{
int a,b;
scanf("%d%d",&a,&b);
int *p1=&a,*p2=&b;
printf("a=%d,b=%d\n", *p1, *p2);
//从小到大
(*p1 > *p2)?printf("%d,%d",*p2,*p1):printf("%d,%d",*p1,*p2); system("pause");
}
#include<stdio.h>
#include<stdlib.h> void change(int a){//单向传递,复制,只能接收不能改变原值
a=;
} void changeA(int *p){//双向赋值,新建了一个变量,复制了地址的值,根据地址改变原值
*p=;
} void main()
{
int a=;
change(a);
printf("%d\n",a);
changeA(&a);
printf("%d",a); system("pause");
}
三、玩玩几种小工具
[c/c++] programming之路(16)、指针的更多相关文章
- [c/c++] programming之路(19)、数组指针
一.指针运算 #include<stdio.h> #include<stdlib.h> void main0(){ ; int *p=&a; printf());//变 ...
- [c/c++] programming之路(17)、高级指针
一.二级指针 二级指针的作用:1.函数改变外部变量指针2.外挂改变一个指针的值 #include<stdio.h> #include<stdlib.h> void main() ...
- [c/c++] programming之路(21)、字符串(二)
一.for /l %i in (1,1,5) do calc 等命令行参数 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #inclu ...
- C语言基础(16)-指针
一.指针的相关概念 1.1 指针变量 指针是一个变量,存放的是一个地址,该地址指向一块内存空间. 例: ; int *p = &a; // 定义一个指针变量p,&符号可以取得一个变量在 ...
- [ASP.NET MVC 小牛之路]16 - Model 验证
上一篇博文 [ASP.NET MVC 小牛之路]15 - Model Binding 中讲了MVC在Model Binding过程中如何根据用户提交HTTP请求数据创建Model对象.在实际的项目中, ...
- c++之路起航——指针
c++一阶指针 定义 存储类型名 数据类型 * 指针变量名: Eg:int *a://定义了一个指向整型的指针 a: 指针使用方法 int a,*b; b=&a;//表明将a的地址赋值给b: ...
- oc学习之路----多级指针的使用和内存分析
---恢复内容开始--- 精髓:要熟悉指针的使用,首先要熟悉指针的各种状态存得是什么数据.(以一级指针 int *p1 二级指针:int **p2 三级指针:int ***p3为例) 一级指针:*p1 ...
- [c/c++] programming之路(29)、阶段答疑
一.指针不等于地址 指针不仅有地址,还有类型,是一个存储了地址的变量,可以改变指向:而地址是一个常量 #include<stdio.h> #include<stdlib.h> ...
- [c/c++] programming之路(28)、结构体存储和内存对齐+枚举类型+typedef+深拷贝和浅拷贝
一.结构体存储 #include<stdio.h> #include<stdlib.h> struct info{ char c; //1 2 4 8 double num; ...
随机推荐
- 非常实用的使用eclipse的快捷键和技巧
解决代码的自动提示问题: 1.打开 Eclipse -> Window -> Perferences 2.找到Java 下的 Editor 下的 Content Assist , 右边出现 ...
- Android100【申明:来源于网络】
Android100[申明:来源于网络] 地址:http://www.android100.org/html/201406/11/23770.html
- jstl 与 el表达式
jar下载地址参考:https://blog.csdn.net/qq_30062589/article/details/80224080 <%@ page language="java ...
- 洛谷P3516 PRZ-Shift [POI2011] 构造
正解:构造 解题报告: 传送门! umm这题就是很思维的?就是想到了就A了想不到就做不出来,然而我也只能是做到理解不知道怎么想出来,,,感觉构造题什么的就很真诚,一点套路也没有,所以像我这种没有脑子只 ...
- Jmeter学习之-获取登录的oken值(2)
此篇介绍获取登录token的第二种方式--json提取器提取 PS:此方法针对接口返回值为json串格式 在登录请求上右键添加JSON提取器 ...
- 原生JavaScript写select下拉选择后跳转页面
<select name="molsel_oprate" onchange="javascript:var obj = event.target; var inde ...
- [js]js中4种无节操的预解释情况
js中4种无节操的预解释情况 - 1. if语句即使条件不成立,条件里的表达式也会进行预解释. - 2. 匿名函数的预解释: 只对等号左边与解释 - 3. 自执行函数的预解释: 不进行预就解释, 执行 ...
- [js]js设计模式-工厂模式
// 定义一个人 var p1 = { name: 'wxb', age: 22, writejs: function () { console.log(this.name + ' can sing. ...
- 家庭记账本之微信小程序(二)
在网上查阅了资料后,了解到了在完成微信小程序之前要完成注册阶段的工作,此次在这介绍注册阶段的流程. 1.首先你要确定小程序的定位.目的以及文案资料等(准备工作). 2.打开微信公众平台官网,点击右上角 ...
- python安装包API文档
在python开发过程中,经常会使用第三方包,或者内置的包. 那么这些包,具体有哪些选项,有哪些方法,你知道吗?下面介绍一种万能方法. 使用命令:<注意,命令里python显示的API版本是根据 ...