2017-02-15 49 views
-4

爲什麼List MakeEmpty(List L)不得不像一個形式寫出:爲什麼c中的一些函數名字寫成兩行?

List 
MakeEmpty(List L) 

馬克阿倫的書?

+0

爲什麼一行命令必須寫兩行? –

+0

這不適用於C或C++。我們如何回答關於非代碼的代碼?並且請不要使用評論添加到您的問題。如果你需要添加到你的問題,只需編輯問題。 –

+3

我一直認爲這只是一種風格的東西。它在技術上絕對沒有區別。 – Scovetta

回答

5

這只是一個造型偏好的問題;這裏的命令是一樣的,不管你是否寫:

List 
MakeEmpty(List L) 

List MakeEmpty(List L) 

這真的沒有有所作爲,除了改變代碼的可讀性。您提到的這本書的作者可能會發現,與您比較的傳統方法相比,添加了更多可讀的空白。

您可以區分空白和實際編譯區別的一種方法是分號。無論哪裏有分號,該行都會終止。在你的情況,如果有:

List; // Notice semicolon here 
MakeEmpty(List L) 

然後這一切都改變了代碼(語法錯在這裏,因爲它改變了代碼的本義,但我只是想通過這個例子我點) 。

添加空格使代碼對程序員更易讀;它增加了風格,特別是如果它被呈現給更多的觀衆。首選空白的數量因人而異。


我試着讓這個最簡單的例子成爲可能:main()函數。見2種方式我寫它:

方法1:

int // Return type of function on different line from function name and arguments for function declaration 
main(void) 
{ 
    cout << "hello" << endl; 

    return 0; 
} 

方法2:

int main(void) // Return type of function on same line as function name and arguments for function declaration 
{ 
    cout << "hello" << endl; 

    return 0; 
} 

就像你的函數聲明,在這裏,返回值的數據類型的位置在兩個代碼樣本之間改變。但是,輸出是相同的:它輸出hello,然後是一個endline。

希望這會有所幫助。如果我在任何地方犯了錯誤,或者您還有其他問題,請在評論框中詢問我。

相關問題