Loadrunner常用函数
1字符串及数据转换操作函数
1.1常用函数
A.函数介绍
Strlen(const char *string)
strcpy(destination_string, source_string); //拷贝一个字符串到另一个字符串中.
strcat(string_that_gets_appended, string_that_is_appended);//合并字符串
atoi(string_to_convert_to_int); //returns the integer value 字符串转换为整型
itoa(integer_to_conver_to_string, destination_string, base); 整型转换为字符串
strcmp(string1, string2); //比较字符串 0:相同
stricmp(string1,string2) //区分大小写比较字符串
strstr(string1,string2) //
strlwr(const char *string) //将字符串转换为小写
strupr(const char *string) //将字符串转换为大写
B.实用例子
✓//常用字符串处理函数的例子
Actions()
{
char MyString1[20] = "";
char MyString2[20] = "";
char MyString3[20] = "Mercury2";
char Cstring[10] = "12345";
int Cint;
strcpy(MyString1,"Mercury1");
// Now MyString1 contains "Mercury1"
// Copy MyString3 into MyString2
strcpy(MyString2,MyString3);
// Catenate MyString2 to MyString1
strcat(MyString1,MyString2);
// Cstring is converted to integer Cint
Cint = atoi(Cstring);
// Cint is converted to stringparam name
Cint = 100;
itoa(Cint,Cstring,10);
return 0;
}
✓//字符串查和截取例子
/*
声明:int findSubStr(char* resultStr,char* sourceStr,char* beginStr,char* endStr)
功能:将字符串sourceStr中beginStr和endStr之间的字符串输出给resultStr
返回值:0:成功 1:失败
调用方法:findSubStr(resultStr,”my name is zhangwei too”,”is”,”too”)
*/
int findSubStr(char* resultStr,char* sourceStr,char* beginStr,char* endStr)
{
int ilen,i;
char* findStartPos;
char* findEndPos;
findStartPos = (char*)strstr(sourceStr,beginStr);
if (findStartPos==NULL) {
return -1;
}
lr_output_message("findStartPos=%s",findStartPos);
findEndPos = (char*)strstr(findStartPos,endStr);
if (findEndPos==NULL) {
return -1;
}
lr_output_message("findEndPos=%s",findEndPos);
ilen=strlen(beginStr);
findStartPos=findStartPos+ilen;
lr_output_message("findStartPos=%s",findStartPos);
ilen=findEndPos-findStartPos;
strncpy(resultStr,findStartPos,ilen);
lr_output_message("resultstr=%s",resultStr);
return 0;
}
1.2格式化字符串
A.函数介绍
函数定义:int sprintf(char *string, char *farmat [,argument,...])
对于format说明:
%s:格式化字符串
%d:格式化数字类型为字符串
%x:将数字格式化成小写十六进制数的字符串
%X:将数字格式化成小写十六进制数的字符串
格式化结果长度:%5d(5位),%8x(8位)
%-4d、%-5x、%-6X:格式化结果左对齐,(没有-表示是右对齐)
sprintf(s, "%d", 123); //将数字123格式化成"123"
sprintf(s, "%5d%5d", 123, 4567); //指定格式化长度,结果是:s=" 123 4567"
sprintf(s, "%-5x%5d", 123, 4567); //指定格式化长度,结果是:s="7b 4567"
B.实用例子
Action()
{
int i,k;
float j;
char formatStr[32];
i=123;
k=-123;
j=123.456;
sprintf(formatStr,"formatStr=%s","format example");
lr_output_message(formatStr);
sprintf(formatStr,"format integer(123)=%d",i);
lr_output_message(formatStr);
sprintf(formatStr,"format float(123.456)=%3.1f",j);
lr_output_message(formatStr);
sprintf(formatStr,"format hex(123)=%x",i);
lr_output_message(formatStr);
sprintf(formatStr,"format HEX(123)=%X",i);
lr_output_message(formatStr);
sprintf(formatStr,"format integer(-123)=%5d%5X",i,i);
lr_output_message(formatStr);
return 0;
}
运行结果:
Action.c(10): formatStr=format example
Action.c(12): format integer(123)=123
Action.c(14): format float(123.456)=123.5
Action.c(16): format hex(123)=7b
Action.c(18): format HEX(123)=7B
Action.c(20): format integer(-123)= 123 7B
1.3数据类型转换函数
A.函数介绍
Sprintf:可以将其它数据类型转换为字符串类型(1.2中有详细描述)
Atoi:将字符转换为整数类型
Itoa:将整数转换为字符存储到第二个参数中,可以将整数转换为不同的数据类型字符串
Atof:将字符转换为浮点类型(使用时应该首先在文件头声明double atof(const char *string);),否则结果是错误的
Atol:将字符转换为长整数类型
Strtol:将一个字符串中的第一个数字字符串部分转换成长整数类型
B.例子
以下脚本是数据类型转换的例子
double atof(const char *string); //必须加上这一行,否则atof函数会出现错误结果
Action()
{
int i;
double j;
long k;
char ichange[32];
/* itoa 函数例子 */
i=123;
itoa(i,ichange,10); //将整数转换为十进制的字符串
lr_output_message("ichange=%s",ichange);
itoa(i,ichange,16); //将整数转换为十六进制的字符串
lr_output_message("ichange=%s",ichange);
itoa(i,ichange,2); //将整数转换为二进制的字符串
lr_output_message("ichange=%s",ichange);
/* atoi 函数例子 */
i=atoi("12345"); //将字符串转换为整数
lr_output_message("atoi('12345')=%d",i);
/* atof 函数例子 */
j=atof("123.12"); //将字符串转换为浮点数
lr_output_message("atof('123.12')=%.3f",j);
/* atol 函数例子 */
k=atol("1234567890"); //将字符串转换为长整型
lr_output_message("atol('1234567890')=%d",k);
/* strtol 函数例子 */
//strcpy(ichange,"1234567890 is long int");
k=strtol("1234M567890",ichange,10); //将字符串转换为长整型
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论