我正在創建一個函數,用變量+變量名稱的格式顯示很多變量。在TI-BASIC中,如何僅顯示給定變量的變量名?
Define LibPub out(list)=
Func
Local X
for x,1,dim(list)
list[x]->name // How can I get the variable name here?
Disp name+list[x]
EndFor
Return 1
EndFunc
我正在創建一個函數,用變量+變量名稱的格式顯示很多變量。在TI-BASIC中,如何僅顯示給定變量的變量名?
Define LibPub out(list)=
Func
Local X
for x,1,dim(list)
list[x]->name // How can I get the variable name here?
Disp name+list[x]
EndFor
Return 1
EndFunc
給出一個列表值,沒有辦法找到它的名字。
考慮這個例子:
a:={1,2,3,4}
b:=a ; this stores {1,2,3,4} in b
out(b)
1行:首先被創建{1,2,3,4}
的值。然後創建名稱爲a
的變量並將其值設置爲{1,2,3,4}
。
第2行:評估表達式a
;結果是{1,2,3,4}
。將創建一個名稱爲b
的新變量,並將其值設置爲「{1,2,3,4}。
第3行:評估表達式b
。變量引用查找b
中存儲的值。結果是{1,2,3,4}
。然後將該值傳遞給函數out
。
功能out
接收數值{1,2,3,4}
。給定值後,無法知道值是否存儲在變量中。這裏的值存儲在a
和b
中。
但是我們也可以看看out({1,1,1,1}+{0,2,3,4})
。
系統將評估{1,1,1,1}+{0,2,3,4}
並獲得{1,2,3,4}
。然後調用out
。值out
收到了一個表達式的結果,但是等價值碰巧存儲在a
和b
中。這意味着這些值沒有名稱。
一般而言:變量有一個名稱和一個值。值沒有名字。
如果您需要打印一個名稱,然後查看字符串。
這將佔用大量內存,但你可以根據中要獲取列表的變量指標保持變量名的字符串,以及一些數量的字符分隔各個名稱,並得到一個子。例如,假設你想要訪問索引0,那麼你需要一個從(變量索引*變量名稱長度,索引變量*長度+長度+1)開始的子串。 該字符串將是這樣的:假設你有變量foo的,淺的,隨機的動力 的字符串將存儲像這樣:「富BAS隨機推動」