LoadRunner腳本編寫(3)

發表于:2015-09-21來源:uml.org.cn作者:不詳點擊數: 標簽:loadrunner
下面來回顧一下嵌套循環例子。 Action() { int i,j; //生命兩個變量 for (i=1;i=5;i++) //第一重循環,循環5次 { if (i==3) break; //當i等于3時,跳出本重循環 else lr_ou

  下面來回顧一下嵌套循環例子。

Action()
{
int i,j; //生命兩個變量
for (i=1;i<=5;i++) //第一重循環,循環5次
{
if (i==3)
break; //當i等于3時,跳出本重循環
else
lr_output_message("i=%d",i); //否則,輸入i的值

for (j=1;j<=5;j++) //第二重循環,循環5次
{
if (j==2)
break; //當j等于2時,跳出本重循環
else
lr_output_message("j=%d",j); //否則,輸入j的值
}
}
}

  上面的代碼中我加了注釋,這里就不用再解釋。

  運行結果:

Starting iteration 1.
Starting action Action.
Action.c(9): i=1
Action.c(16): j=1
Action.c(9): i=2
Action.c(16): j=1
Ending action Action.
Ending iteration 1.

  函數

  函數,通常 一小段C語言程序僅有一個main()函數組成。然而,在實際編寫應用程序中,需要開發人員編寫大量的用戶自定交函數,不僅要在程序中定義函數本身,而且在主調函數模塊中還必須對該被調函數進行類型說明,然后才能使用,與用戶自定義函數相對應的是函數庫,C語言集成開發環境(IDE)提供,我們只要調用就是行了。就就所謂前人種樹,后人乘涼,不然看似一個簡單的東西,尋其源頭來做,都是一個相當復雜的過程。

void SsyHello() //打招呼函數
{
lr_output_message("hello %s",lr_get_host_name());
}

int GetBigger(int x,int y) //得到最大值函數
{
if (x>y) {
return x;
}
else{
return y;
}

}

Action(){
int x=10,y=20, result; //聲明變量

SsyHello(); //無形參,無返回值函數
result = GetBigger(x,y);
lr_output_message("GetBigger(%d,%d)=%d",x,y,result); //帶形參,帶返回值函數

return 0;
}

  上面的程序加注解了,簡單來說就是前面定義了兩個函數SsyHello() 和 GetBigger(),主函數Action()對前面兩個函數進行調用

  運行結果:

Starting iteration 1. Starting action Action. Action.c(4): hello 2011-20120624YO Action.c(23): GetBigger(10,20)=20 Ending action Action. Ending iteration 1.

  動態存儲方式與靜態存儲方式

  我們在定義變量是,根據定義的位置不同,分為全局變量與局部變量。我出生在一個叫“舞陽”的小縣城,在這個縣城中也有人名“舞陽”,前一個作用于整個縣城,后一個只作用于他個人。那么從變量值的存在生存期角度,又可分為靜態存儲方式和動態存儲方式兩類。

  靜態存儲方式:是指在程序運行期間分配固定的存儲空間方式。

  動態存儲方式:是在程序運行期間根據需要進行動態的分配存儲空間的方式。

  用戶存儲空間可分三部分:

  1、程序區

  2、靜態存儲區

  3、動態存儲區

  全局變量全部存放在靜態存儲區,在程序開始執行時給全局變量分配存儲區,程序運行完畢就釋放,在程序執行過程中它們占據固定的存儲單元,而不動態地進行分配和釋放。

  動態存儲區存放以下數據:

  (1)函數形式參數

  (2)自動變量(未加static聲明的局部變量)

  (3)函數調用時的現場保護和返回地址

  上面這些數據,在函數開始調用時分配動態空間,函數結果時釋放這些空間。

  在C語言中,每個變量和函數有兩個屬性:數據類型和數據的存儲類別

原文轉自:http://www.uml.org.cn/Test/201303151.asp

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97