2014-02-09 43 views
2

我最近不得不面對這個問題,也就是說,我怎樣才能在一個函數或Pascal過程中傳遞1,2,3,9,38919,0或任意隨機數的參數?我想創建一個接受盡可能多的參數的子程序,就像我想傳遞它的參數一樣,如writeln。
帕斯卡爾 - 如何將可變數量的參數傳遞給子程序? (可變參數函數)

writeln('Hello, ', name, '.'); 
writeln('You were born on ', birthDate, ', and you are ', age, ' years old.'); 


我搜索了一些指導或任何網站,但唯一相關的線程我發現是theseones,這幫助我理解我的問題有點多,但我仍然不知道如何在帕斯卡爾做這個。
我也發現this,但我不確定我是否真的明白它的意思。 (並且我也不知道是否適用於Free Pascal也適用於其他編譯器)

任何想法? :/

回答

3

首先,writeln是一種語言結構,而不是函數。你無法爲自己的功能模仿它。 (雖然可以重新路由寫入輸出,但FPC有writestr,可以寫入字符串)

array of const語法更加面向Delphi。 Open array也是面向Delphi的,但Turbo Pascal有自己的形式。這只是一種類型。

但是,由於經典的帕斯卡無法做可變參數,如果你想這樣做,你不能避免使用擴展。

+0

非常感謝您的回答,我想我會使用「數組類似」的方法來解決我的問題,因爲我認爲這是最接近我想要的方式。感謝您的鏈接! – qreon

相關問題