LoadRunner 脚本学习 -- 指针基础
先搞清楚 ++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 脚本学习 -- 指针基础的更多相关文章
- Loadrunner脚本学习总结
1.1 web脚本录制选择Web(HTTP/HTML)协议: 注意录制脚本前选择如下协议: 1.2 脚本如果需要使用如下函数: web_reg_save_param.web_fin ...
- LoadRunner 脚本学习 -- 使用动态链接库
DLL = Dynamic Link Library DLL最重要的一个特点就扩展应用程序的特性. 再强大的工具也有不是万能的,通过调用动态库的方法极大地增强loadrunner的功能.当你在用loa ...
- LoadRunner 脚本学习 -- 读取文件内容
随便创建个txt文档 输入点内容,例如 读取文件内前N个字符: Action() { long myfile; ; ]; char *filename = "E:\\kkk.txt&quo ...
- LoadRunner 脚本学习 -- 动态储存方式和静态储存方式
我们在定义变量是,根据定义的位置不同,分为全局变量与局部变量.我出生在一个叫“舞阳”的小县城,在这个县城中也有人名“舞阳”,前一个作用于整个县城,后一个只作用于他个人.那么从变量值的存在生存期角度,又 ...
- LoadRunner 脚本学习 -- 随机函数运用
直接上码 Action() { int randnum; randnum = rand()%+; lr_output_message("随机得到的数是:%d", randnum); ...
- 学习 shell脚本之前的基础知识
转载自:http://www.92csz.com/study/linux/12.htm 学习 shell脚本之前的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写sh ...
- 【黑客基础】Windows PowerShell 脚本学习(上)
视频地址:[黑客基础]Windows PowerShell 脚本学习 2019.12.05 学习笔记 1.$PSVersionTable :查看PowerShell的版本信息. 2.PowerShel ...
- Bat 脚本学习 (基础篇)
[转]Bat 脚本学习 2015-01-05 14:13 115人阅读 评论(0) 收藏 举报 基础部分: ============================================== ...
- LoadRunner脚本编写(转)
性能测试工程师要懂代码么?答案是必须的.好多测试员认为在loadrunner中编写脚本很难很牛X ,主要是大多测试人员并未做过开发工作,大学的那点程序基础也忘记的差不多了.还有非计算机专业出身的测试员 ...
随机推荐
- js中修改标签的hidden属性
hidden属性在html5中,只要存在,就是隐藏效果,而不论值为多少 要显示元素,要删除hidden属性,而不是设置为false <script type="text/javascr ...
- Oracle分页语句
select * from (select A.*,rownum rd from (select * from [tablename] where [condition] order by [con ...
- 9.SpringMVC和json结合传递数据 && 10.SpringMVC获取controller中json的数据
- Match:Keywords Search(AC自动机模板)(HDU 2222)
多模匹配 题目大意:给定很多个字串A,B,C,D,E....,然后再给你目标串str字串,看目标串中出现多少个给定的字串. 经典AC自动机模板题,不多说. #include <iostream& ...
- spring mvc配置完后实现下载功能
实现是前台: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEn ...
- 页面上有两个元素id相同,js中如何取值
页面上有两个table,id都是”cont2",现要在js中取到这两个table,改变样式. js实现: var tab2=document.all.cont2(1);var tab=do ...
- iOS应用架构谈(三):View层的组织和调用方案(下)
iOS客户端应用架构看似简单,但实际上要考虑的事情不少.本文作者将以系列文章的形式来回答iOS应用架构中的种种问题,本文是其中的第二篇,主要讲View层的组织和调用方案.下篇主要讨论做View层架构的 ...
- 3DS MAX调慢摄像机动画
在3ds max的右下角找到时间配置,然后出现该对话框,然后调整结束时间,将原来的时间翻倍,就能够是摄像机动画变慢. 下图的旋转速度比上图慢一半.
- iOS开发-正则表达式的使用方法
前言:在表单验证中,我们经常会使用到正则,因为我们需要用它来判断用户输入的字符是否为合法的,如果是不合法的,那么应该提示用户输入错误,并不让提交至服务器.我们也可以通过正则表达式,从用户输入的字符串中 ...
- php JS和JQ
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...