先搞清楚 ++a 和 a++的区别

++a : 前缀++,  先自增,后表达式

a++ : 后缀++,  先表达式,后自增

前缀,自增立即生效。

后缀,下次才会看到效果。

一维数组的指针

Action(){
int score[]={,,,};
int *p=score;
int i; for (i=;i<=;i++)
lr_output_message("kkk=%d",*p++); return ; }

*p++: 指针取值,并向后移一位

*(p++): 很蛋疼的理解。 ++ 是后缀,前后缀的威力最大,因此同*p++ 。 也可以这么理解,指针p++移一位,但因为是后缀,下次移动才生效,所以效果是等同于*p++

Starting action Action.
Action.c(8): kkk=100
Action.c(8): kkk=98
Action.c(8): kkk=78
Action.c(8): kkk=55
Action.c(8): kkk=0
Ending action Action.

数组申明是[5],实际只有4个数,第5个则为0.

*++p: ++为前缀,那就是p先移一位并立马生效的,再取数组的值

Starting action Action.
Action.c(8): kkk=98
Action.c(8): kkk=78
Action.c(8): kkk=55
Action.c(8): kkk=0
Action.c(8): kkk=81723452
Ending action Action.

(*p)++:  ++后缀,取指针p的值,然后这个值自增,后缀下次才生效

Starting action Action.
Action.c(8): kkk=100
Action.c(8): kkk=101
Action.c(8): kkk=102
Action.c(8): kkk=103
Action.c(8): kkk=104
Ending action Action.

++(*p): 取指针p的值,然后这个值自增,因为是前缀,立即生效

Starting action Action.
Action.c(8): kkk=101
Action.c(8): kkk=102
Action.c(8): kkk=103
Action.c(8): kkk=104
Action.c(8): kkk=105
Ending action Action.

++*p++: 结合上面的不难理解,取数组的值,指针移一位,取出来的这个值自增。  *和++优先级一样,从右往左运算

Starting action Action.
Action.c(8): kkk=101
Action.c(8): kkk=99
Action.c(8): kkk=79
Action.c(8): kkk=56
Action.c(8): kkk=1
Ending action Action.

二维数组的指针

Action()
{
int erwei[][] = {{,,},{,,}};
int (*p1)[] = erwei;
int i, j; for(i=; i<; i++)
{
for(j=; j<; j++) {
lr_output_message("*(*(p1+%d)+%d) =%d",i,j,*(*(p1+i)+j));
} }
return ;
}

Starting action Action.
Action.c(10): *(*(p1+0)+0) =2
Action.c(10): *(*(p1+0)+1) =3
Action.c(10): *(*(p1+0)+2) =4
Action.c(10): *(*(p1+1)+0) =5
Action.c(10): *(*(p1+1)+1) =6
Action.c(10): *(*(p1+1)+2) =7
Ending action Action.

int (*p1)[3]: 申明二维数组的指针,[3] 表示指针的长度,和二维数组的每组大小一致

*(p1+i):移动指针第一维度,即第几组

*(*(p1+i)+j):在指针的第一维度下,移动指针第二维度,即在那组里的第几个

LoadRunner 脚本学习 -- 指针基础的更多相关文章

  1. Loadrunner脚本学习总结

    1.1      web脚本录制选择Web(HTTP/HTML)协议: 注意录制脚本前选择如下协议: 1.2      脚本如果需要使用如下函数: web_reg_save_param.web_fin ...

  2. LoadRunner 脚本学习 -- 使用动态链接库

    DLL = Dynamic Link Library DLL最重要的一个特点就扩展应用程序的特性. 再强大的工具也有不是万能的,通过调用动态库的方法极大地增强loadrunner的功能.当你在用loa ...

  3. LoadRunner 脚本学习 -- 读取文件内容

    随便创建个txt文档  输入点内容,例如 读取文件内前N个字符: Action() { long myfile; ; ]; char *filename = "E:\\kkk.txt&quo ...

  4. LoadRunner 脚本学习 -- 动态储存方式和静态储存方式

    我们在定义变量是,根据定义的位置不同,分为全局变量与局部变量.我出生在一个叫“舞阳”的小县城,在这个县城中也有人名“舞阳”,前一个作用于整个县城,后一个只作用于他个人.那么从变量值的存在生存期角度,又 ...

  5. LoadRunner 脚本学习 -- 随机函数运用

    直接上码 Action() { int randnum; randnum = rand()%+; lr_output_message("随机得到的数是:%d", randnum); ...

  6. 学习 shell脚本之前的基础知识

    转载自:http://www.92csz.com/study/linux/12.htm  学习 shell脚本之前的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写sh ...

  7. 【黑客基础】Windows PowerShell 脚本学习(上)

    视频地址:[黑客基础]Windows PowerShell 脚本学习 2019.12.05 学习笔记 1.$PSVersionTable :查看PowerShell的版本信息. 2.PowerShel ...

  8. Bat 脚本学习 (基础篇)

    [转]Bat 脚本学习 2015-01-05 14:13 115人阅读 评论(0) 收藏 举报 基础部分: ============================================== ...

  9. LoadRunner脚本编写(转)

    性能测试工程师要懂代码么?答案是必须的.好多测试员认为在loadrunner中编写脚本很难很牛X ,主要是大多测试人员并未做过开发工作,大学的那点程序基础也忘记的差不多了.还有非计算机专业出身的测试员 ...

随机推荐

  1. ios xib 中的 size class

    需要阅读UITraitCollection的说明文档,先截图如下: 今天说说xib中的size class的简单设置,先看图 一共有9个小块,水平方向代表width,垂直方向代表height. 对于w ...

  2. Centos6.5 Openvpn的安装与配置

    一.安装准备 ? 1 2 yum -y install openssl-devel openssl yum -y install gcc gcc-c++ 二.OpenVPN服务端安装过程1.lzo下载 ...

  3. Spring配置数据源

    Spring在第三方依赖包中包含了两个数据源的实现类包,其一是Apache的DBCP,其二是 C3P0.可以在Spring配置文件中利用这两者中任何一个配置数据源. DBCP数据源 DBCP类包位于 ...

  4. BestCoder19 1001.Alexandra and Prime Numbers(hdu 5108) 解题报告

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5108 题目意思:给出一个数正整数 N,N <= 1e9,现在需要找出一个最少的正整数 M,使得 ...

  5. springmvc多文件上传

    @RequestMapping(value = "/upload", method = RequestMethod.POST) public void upload(@Reques ...

  6. chrome进入控制台时自动进入断点模式的解决方法

    简单粗暴,不知道为什么,去掉那个√就好了

  7. ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室(一) 之 基层数据搭建,让数据活起来(数据获取)

    大家好,本篇是接上一篇 ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室(零) 前言  ASP.NET SignalR WebIM系列第二篇.本篇会带领大家将 LayIM ...

  8. iOS小技巧总结,绝对有你想要的

    原文链接 在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新. UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIV ...

  9. oracle学习不错的网站

    http://oracle-base.com/articles/linux/rlwrap.php

  10. 自定义Log模块

    BuildConfig.DEBUG默认为true,在为app打上SignedKeyStore之后就为false, // Log控制器 MyLoger.openDebutLog(true); MyLog ...