C语言应用于LR中-如何得到数组长度(原创)

2 views
Skip to first unread message

tony...@gmail.com

unread,
Mar 21, 2007, 1:43:43 AM3/21/07
to 测试者家园
C语言应用于LR中-如何得到数组长度(原创)
C语言没有提供获取数组长度的函数,最起码我不知道,所以编写了一个函数取数组的长度,调试成功,大家可以试试。另外也可以用sizeof(a)/4来
取得整型数组的长度,因为整型占4个字节。效果相同。

#include "web_api.h"

int LenofArray(int *p)
{
int length=0;
for(;*p!='\0';p++)
length++;
return length;
}

Action()
{
int a[]={1,2,3,4,23,234,4543,565,767};
int m=LenofArray(a);
lr_output_message("%d",m);
return 0;
}

Zee.lgao

unread,
Mar 21, 2007, 10:47:09 PM3/21/07
to 测试者家园
仿造你的这个,我写了如下段:


int LenofArray(char *p)
{
char length=0;


for(;*p!='\0';p++)
length++;
return length;
}


Action()
{
char buffer[128] = {0};

int j;
int i;
int h;
web_reg_save_param("param1",
"LB=Content-Length: ",
"RB=\r\n""",
"NotFound=ERROR",
"Ord=all",
"Search=Headers",
LAST);

web_url("www.hao123.com",
"URL=http://www.hao123.com/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t2.inf",
"Mode=HTML",
LAST);
//lr_save_string(lr_eval_string("{param1_count}"),"j");
j=atoi(lr_eval_string("{param1_count}"));
lr_output_message("the j is %d",j);
for(i=1;i<=atoi(lr_eval_string("{param1_count}"));i++)
{
sprintf( buffer, "{param1_%d}", i);
h=LenofArray(buffer);
lr_output_message("%d",h);
lr_output_message("the conut is %s.",lr_eval_string(buffer));

}
return 0;
}

这里我的buffer打出来是长度是8.
但是为什么h打出来是10呢?

Zee.lgao

unread,
Mar 21, 2007, 11:32:28 PM3/21/07
to 测试者家园
我做错了。嘿嘿,我知道为什么是10了。
Reply all
Reply to author
Forward
0 new messages