2011-03-26 75 views
0

我不明白部分:struct tm * timeinfo;這是什麼意思?爲什麼那裏有一顆明星?謝謝!瞭解一些C++代碼

int main() 
{ 
    time_t rawtime; 
    struct tm * timeinfo; 

    time (&rawtime); 
    timeinfo = localtime (&rawtime); 
    printf ("The current date/time is: %s", asctime (timeinfo)); 

    return 0; 
} 
+1

所有的代碼都是C編譯的。我重新標記了它 - 你會以這種方式獲得更多的觀衆。如果你使用C++,你可能不會這樣編碼。例如tm聲明不需要C++中的struct關鍵字 – Clifford 2011-03-26 13:47:01

+1

@Clifford:它也是有效的C++。我沒有看到任何需要重新標記它。 – Puppy 2011-03-26 13:47:36

+0

@DeadMG:是的。我編輯我的評論來解釋(希望)。 – Clifford 2011-03-26 13:49:14

回答

2
struct tm * timeinfo; 

它聲明一個變量timeinfo struct tm*。這是C語法。

在C++中,您無需編寫struct關鍵字。只需tm * timeinfo就夠了!

4

如果你真的不知道該怎麼指針在C++中聲明,你需要做更多的閱讀比將適合的答案在這裏。 *宣佈pointer to

0

這是C/C++中的指針。指針是C語言的基本功能。

0

localtime()將指針返回到tm結構的內部副本。 struct tm *聲明一個指向tm結構體的指針。