三、數據與數據運算
(一)簡單介紹vf系統中數據的形式和類型
1.vf系統所處理的數據形式有四種:
變量
表達式
函數
2.上述四種形式的數據根據其組成和結構的不同又可分為六種類型:
數值型
貨幣型
字符型
日期型
日期時間型
邏輯型
上述類型決定數據的存儲方式和運算方式。
(二)常量
1.含義:是用以表示一個具體的、確定的、不變的值。
2.常量的類型:
1)數值型常量:
含義:也稱N型,用來表示數量的多少。
組成:由數字0—9,小數點和正負號構成。
可用科學計數法的形式來書寫,如:1500=1.5*10的3次方=1.5e3,其中的e/E表示10的n次方,n為整數(正整數、負整數、0均可)。
數值型數據在內存中用8個字節表示。
2)貨幣型常量:
含義:也稱Y型,用來表示貨幣值。
組成:在數值型常量之前加上一個$符號即可。
在存儲和計算時采用4位小數,多于4位時自動四舍五入。
沒有科學計數法形式,在內存中占用8個字節。
3)字符型常量
含義:也稱C型或者字符串。
組成:用半角的單引號、雙引號或方括號作為定界符把字符串括起來,且定界符必須成對匹配。但定界符不是字符型常量的內容。
定界符內的字符可為數字、漢字、英文、空格或者無內容。
不包含任何字符的字符串為空串;完全以空格為字符的字符串為空格字符串。
4)日期型常量:
含義:用來顯示日期,也稱D型。
組成:它的定界符是一對花括號,并且花括號內第一個字符必須是脫字符^,花括號內括年月日三部分內容,各部分內容之間用分隔符-分隔。而斜杠則是系統在主窗口顯示日期型數據使用的默認分隔符。{^yyyy-mm-dd}。
日期型常量也用8個字節表示。
影響日期格式的設置命令:
Set date to ymd/dmy/mdy
——功能是設置日期顯示時的格式。
Set mark to “-”或者”/”或者”\”
——功能是用于設置顯示日期型數據時的分隔符。若未指定分隔符則表示恢復系統默認斜杠分隔符。
Set century on/off
——功能是設置年份是以(on)4位或(off)2位來顯示。
5)日期時間型常量:
含義:用來顯示日期和時間,也稱T型。
組成:{^yyyy-mm-dd hh:mm:ss am/pm}。
日期時間型常量也用8個字節存儲。
注:上述所有關于日期和日期時間的設定在vf界面的工具菜單—選項—區域中進行操作。
6)邏輯型常量:
含義:它只有邏輯真和邏輯假兩個值,也稱L型。
組成:邏輯真——.t. .T. .y. .Y.
邏輯假——.f. .F. .n. .N.
前后的兩個點作為定界符必不可少,但是只占1個字節。
(三)變量
1.定義:是指在成都之行進程中,其值可以被改變的量。
2.變量的命名原則:
以漢字、字母或下劃線開頭,可以含有數字,但不能含有非法字符如小數點、空格或通配符(*/?)。
要盡量做到見文知義。
3.變量的分類:
1)字段變量:在表文件中記錄屬性內容的變量。表中的每一個列標題就稱為一個字段變量。列標題的名稱就是這個字段變量的名稱,其下的具體內容就是這個字段變量的值,即字段值。
注意一:表的每一行被稱為一條記錄,鼠標指向某一行時會變成指針的標志,指針所指向的行即此字段當前的值,當輸出這個字段變量時,就會在主窗口顯示當前行的值。
注意二:若字段變量名和內存變量名重名的現象時,優先輸出字段變量的值;若想輸出內存變量的值,則需在變量名前加上前綴M.(或M->)。
2)系統變量:是由vf系統自定義的變量,其名稱是由系統預先定義好的,通常以下劃線_開頭。
例如:_screen. fontsize=20 可更改主窗口所顯示字的字號大小;
_screen. backcolor=rgb(0,255,45) 可更改主窗口的背景顏色。
_vfp. Caption=”任意字符” 可更改vf標題欄上顯示的標題名。
3)內存變量:
含義:表示內存中臨時存放數據的單元格,它的類型取決于其中存放數據的類型。
內存變量的賦值:即把一個數據存放到內存變量中。兩種方法:
格式一:store 表達式/數據 to 變量名 可把同一個值賦給不同的變量,各內存便另名之間要用逗號隔開。
格式二:變量名=表達式/數據(注意:數據為常量時必須加””)
可通過對內存變量重新賦值來改變其內容和類型。
內存變量的顯示:list/display memory [like */?] 用來顯示內存變量的信息。
內存變量的清除:
格式一:clear memory/release all 表示清除全部內存變量
格式二:release 變量名表 表示清除制定內存變量,可為若干個
格式三:release all like */?或except */? 表示清除相匹配或不相配的內存變量。
數組:
①含義:數組是一種特殊的內存變量,表示內存中連續的若干個存儲單元。用來存儲一系列數值,其中的每個值稱為數組的一個元素,可通過下標來顯示,下標用()或[]括起來。一個數組中的各個元素的值的數據類型可以不同。
②創建數組的命令:dimension/declare 數組名(元素個數)。
注意:若定義了一個數組aa,再給數組名aa賦值,則表明是給aa數組中的每個元素都賦予了一個相同的值。
③數組分類:
一維數組:一行多列 dimension 數組名(數值表達式)
二維數組:多行多列dimension 數組名(數值表達式1,數值表達式2)
其中,數值表達式1指定其行,數值表達式2指定其列,若只有一個數值,則為一維數組。
④一維數組與二維數組的轉換:
例如:dimension aa(3)——aa(1,1),aa(1,2),aa(1,3)
這是將一維數組轉換為二維數組。
dimension bb(2,3)——bb(1),bb(2),……bb(6)
這是將二維數組轉換為一維數組。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |