快好知 kuaihz

atoi函数与lr_output_message

获取字符串出现的次数,下面两种方法,为什么两种不同结果 

方法一:

y=atoi(lr_eval_string("{what_count}"));

  lr_output_message("符合条件的记录有 %s条",y);

运行出现

vuser_end.c(6): Error: C-interpreter run time error: vuser_end.c (6):  Error -- memory violation : Exception ACCESS_VIOLATION received.

vuser_end.c(6): Notify: CCI trace: vuser_end.c(6): LrsCleanup()

查资料提示是内存冲突,请教高手们,怎么解决?

方法二:

lr_output_message("符合条件的记录有 %s条",lr_eval_string("{what_count}"));

用此方法可以通过运行。

如果用D代替了S,同时web_reg_save_parma中的属性值有ORD这个,动行结果是正确的,但是如果没有ORD这个,那结果仍是有错误的,记录条数仍为0,何解?

ORD : 说明第几次出现的左边界子串的匹配项才是需要的内容。该属性可有可无,缺省值是1。如为All,则将所有找到的内容储存起来。

%d  表示按十进制整型输出

%s  表示输出的是一个字符串

脚本如下:

Action()

{

   int x;

   int y;

        web_reg_save_param("what",

                           "LB=

",

                           "RB=",

                        //  "Ord=All",   

                           "saveoffset=0",        

                           "saveLen=12",

                           "search=body",

                           LAST);

        web_url("mytest", 

                "URL=http://127.0.0.1:8888/mytest/", 

                "Resource=0", 

                "RecContentType=text/html", 

                "Referer=", 

                "Snapshot=t1.inf", 

                "Mode=HTML", 

                EXTRARES, 

                "Url=../favicon.ico", "Referer=", ENDITEM, 

                LAST);

//方法

     y=atoi(lr_eval_string("{what_count}"));

     lr_output_message("符合条件的记录有 %d 条",y);

//方法

  // lr_output_message("temp=%s",lr_eval_string("{what}"));

     lr_output_message("符合条件的记录有 %s 条",lr_eval_string("{what_count}"));

。。。。

}

谢谢,只是还不明白那个weg_reg_save_parma为什么一定要用到Ord(两种情况下都必须要,我试验过了),似乎和那个“该属性可有可无,缺省值是1。”不相符。

本站资源来自互联网,仅供学习,如有侵权,请通知删除,敬请谅解!
搜索建议:lr_output_message  lr_output_message词条  函数  函数词条  atoi  atoi词条  
综合

 LabVIEW编程技巧:强大的变...

变体数据类型简介LabVIEW是一种图形化编程语言,所以也叫G语言,在程序框图上连线时,必须相同类型或者能强制相互转换的类型端口才能连接在一起,例如我们不能将一...(展开)