转:lr_eval_string函数的用法解析
在LR中,C的变量和LR的参数是不一样的。
任何C的变量都不能被LR的函数直接调用。
应该用lr_eval_string来取值。
比如{NewParam}(LR中参数化的变量)直接用这个引用是没有问题的。
但是如果如下:
Action()
{
char a[10];
strcpy(a,"{NewParam}");
lr_message(a);
return 0;
}
这就不对了。
lr_message(a);就会报错。
但是写成lr_message(lr_eval_string(a));就可以。
因为这里的值已经取出来了。
再看另一个问题:一个网友说:
Action()
{
char a[10];
strcpy(a,"{NewParam}");
lr_message(lr_eval_string(a));
if (lr_eval_string(a)[0] == 11)
{
lr_message ("a=%d",a);
}
return 0;
}
中的 if (lr_eval_string(a)[0] == 11)不应该通过语法检查。
其中{NewParam}是参数化的。内容:11.
那下面我来用lr_message ("a=%d",lr_eval_string(a)[0]);在if前面打出来看看是什么。结果打出来是:49(数字1的ascii码).
也就是说if (lr_eval_string(a)[0] == 11)是判断1的ascii码是否等于11.显示是不相等的。于是这里的 lr_message ("a=%d",a);就不会执行。
下面我们用另一段代码来看看:
char *str2="T";
char a[10];
strcpy(a,lr_eval_string("{NewParam}"));
lr_message ("a=%d",lr_eval_string(a)[0]);
lr_message(lr_eval_string(a));
if (lr_eval_string(a)[0]== *str2) {
lr_message ("a=%s",a);
lr_message ("执行这句!");
}
结果如下:
Starting action Action.
a=84
T
a=T
执行这句!
Ending action Action.
这里我的参数是一个大写的“T”。
我们看到lr_eval_string(a)[0]取到的是大写字母“T”的ascii码。
转:lr_eval_string函数的用法解析的更多相关文章
- having,groub by 结合聚合函数的用法解析
聚合函数有:sum , count, avg, max等等: where无法与聚合函数一起使用,所以在sql语句中加上having子句来筛选查询结果: 上面的sql语句是错的,正确如下: SELECT ...
- select函数详细用法解析
1.表头文件 #include #include #include 2.函数原型 int select(int n,fd_set * readfds,fd_set * writefds,fd_set ...
- 转:从编译链接过程解析static函数的用法
关于static函数的用法 就像我们熟知的那样,变量可以分全局的和局部的,函数也可以分全局的和局部的. 比如说,在一个工程的common.h中定义了一个全局变量 int test;那么在整个工程的作用 ...
- (转)解析PHP中ob_start()函数的用法
本篇文章是对PHP中ob_start()函数的用法进行了详细的分析介绍,需要的朋友参考下 ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车/空格/换行 ...
- 内联函数 —— C 中关键字 inline 用法解析
一.什么是内联函数 在C语言中,如果一些函数被频繁调用,不断地有函数入栈,即函数栈,会造成栈空间或栈内存的大量消耗. 为了解决这个问题,特别的引入了inline修饰符,表示为内联函数. 栈空间就是指放 ...
- 【转载】内联函数 —— C 中关键字 inline 用法解析
转载地址:https://blog.csdn.net/zqixiao_09/article/details/50877383 一.什么是内联函数 在C语言中,如果一些函数被频繁调用,不断地有函数入栈, ...
- extern "c"用法解析
转自: extern "c"用法解析 - 简书 引言 C++保留了一部分过程式语言的特点,因而它可以定义不属于任何类的全局变量和函数.但是,C++毕竟是一种面向对象的程序设计语言, ...
- WordPress的have_posts()和the_post()用法解析
原文地址:http://www.phpvar.com/archives/2316.html 网上找到一篇介绍WordPress的have_posts()和the_post()用法解析的文章,觉得不错! ...
- extern "C" 用法解析
extern "c"用法解析 作者 作者Jason Ding ,链接http://www.jianshu.com/p/5d2eeeb93590 引言 C++保留了一部分过程式语言的 ...
随机推荐
- tomcat源码分析(二)启动过程
在Catalina的load方法中,首先初始化Server组件. // Start the new server if (server instanceof Lifecycle) { try { se ...
- 有关webapplicationcontext的初始化
ApplicationContext是Spring的核心,Context我们通常解释为上下文环境,我想用“容器”来表述它更容易理解一些,ApplicationContext则是“应用的容器”了:在We ...
- U盘做svn版本控制
svn提供的访问方式有: file:///本地路径/to/svnrepo/ //访问本地磁盘 http://host/to/svnrepo/ //通过配置subversion的apache服务器的we ...
- Codeforces Round 371 Div2 B.Passwords
原题: B. Passwords time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...
- 照着例子学习protobuf-python
以下是照着python操作protobuf进行的protobuf-python的学习笔记: 首先是protobuf的下载与安装: 1 由于google被墙,所以去github上面搜索了一下protob ...
- 使用Common.Logging与log4net的组件版本兼容问题
引用: http://www.cnblogs.com/shijun/p/3713830.html 近期使用了Common.Logging的ILog接口做日志接口,同时利用其log4net适配器与lo ...
- 第四十五节,logging日志模块
用于便捷记录日志且线程安全的模块 单文件日志 basicConfig()模块函数 功能:创建日志文件和写日志模式[有参] 使用方法:模块名称.basicConfig(filename="日志 ...
- hdu_4547_CD操作(在线LCA)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=4547 题意:中文,不解释 题解:很裸的LCA,注意父目录打开子目录一次就够了,这里我才用倍增在线LCA ...
- LeetCode OJ 118. Pascal's Triangle
Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5,Retur ...
- 构造DataTable
手动构造一个DataTable: DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(string)); dt. ...