lr_save_string和sprintf、lr_eval_string的使用

一、lr_save_string函数

1.该函数主要是将程序中的常量或变量保存为参数;

//将常量保存为参数  
lr_save_string("777","page");  
web_url(http://www.sina.com.cn/{page});  
lr_eval_string("{page}"); 
 
//将变量保存为参数,tmp为变量  
lr_save_string(tmp,"page");  
web_url(http://www.sina.com.cn/{page});  
lr_eval_string("{page}");  

  

二、sprintf函数

定义函数 int sprintf( char *str,const char * format,.........);
函数说明     sprintf()会根据参数format字符串来转换并格式化数据,然后将结果复制到参数str所指的字符串数组,直到出现字符串结束(’’)为止。关于参数format字符串的格式请参考printf()。
返回值 成功则返回参数str字符串长度,失败则返回-1,错误原因存于errno中。
附件说明 使用此函数得留意堆栈溢出,或改用snprintf()。
示例 #include<stdio.h>
main()
{
char * a=”This is string A!”;
char buf[80];
sprintf(buf,”>>> %s<<< ”,a);
printf(“%s”.buf);
}
执行 >>>This is string A!<<<
常用该函数代替itoa,将整数格式化为字符串形式。
例如:
int page=0;  
char page_ch[60];  
page=page + 10;
sprintf(page_ch,"%d",page); 

  

三、lr_eval_string函数

 用于返回instring参数中的实际字符串值,可以使用该函数来查看参数化取值是否正确;

char *tmp="hello";
lr_save_string("777","page"); //将常量777保存为参数page
lr_output_message(lr_eval_string("{page}"));  //获取并输出参数page的当前值  
lr_save_string(tmp,"page");     //将变量保存为参数,tmp为变量
 
lr_output_message(lr_eval_string("{page}"));

脚本示例:

example:
int count;
web_reg_save_param("flight_num",
"LB=新",
"RB=闻",
"ORD=All",
LAST);
count=atoi(lr_eval_string("{flight_num_count}"));
 
//sprintf
 
The following example uses sprintf to write the name of a file to a string buffer, 
filename. This name is made up of the word "log", an underscore, the value of i, and the 
file suffix.
 
 
example:
Action()
{
int index = 56;
char filename[64], *suffix = "txt";
 
sprintf(filename, "log_%d.%s", index, suffix);
lr_output_message("The new file name is %s", filename);
 
return 0;
}
Output:
Action.c(9): The new file name is log_56.txt
 
//
lr_save_string
 
Saves a null-terminated string to a parameter.
 
int lr_save_string (const char *param_value, const char *param_name);
 
aram_value The value to assign to the parameter. 
param_name The name of the parameter.
 
 
The lr_save_string function assigns the specified null-terminated string to a parameter.
This function is useful in correlating queries. To determine the value of the parameter,
use the lr_eval_string function.
 
example:
lr_save_string("777", "emp_id");
 
///
#include "as_web.h"
 
 
Action()
{
 
int i;
int count;
char param[10][20];
 
web_reg_save_param("flight_num",
"LB=新",
"RB=闻",
"ORD=All",
LAST);
 
web_add_cookie("BAIDUID=643CC8042E92F7FB5EF83827498BDBDC:FG=1; DOMAIN=www.baidu.com");
 
web_add_cookie("BDSTAT=495409234680ac099258d109b3de9c82d158ccbf6f81800a19d8bc3eb035a10e; 
DOMAIN=www.baidu.com");
 
web_add_header("Accept-Language",
"zh-cn");
 
web_url("www.baidu.com",
"URL=http://www.baidu.com/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
 
count=atoi(lr_eval_string("{flight_num_count}"));
lr_error_message("已经数量:%d",count);
for(i=1;i<=count;i++)
{
sprintf(param[i],"{flight_num_%d}",count);
lr_error_message(param[i]);
}
for(i=1;i<count;i++)
{
lr_error_message(lr_eval_string(param[i])); 
}
 
 
 
 
return 0;
}

  

原文地址:https://www.cnblogs.com/Alexr/p/9360486.html