我已經看到有關這個話題的其他問題,但沒有一個答案對我有用。如何交換c中struct數組的元素?
我swapClasses方法如下:
void swapClasses(struct ClassInfo *p1, struct ClassInfo *p2){
ClassInfo *temp = p1;
*p1 = *p2;
*p2 = *temp;
}
但是,當我執行的代碼,並嘗試添加應該在技術上首先出現在數組中的一類,它只是添加到末尾。即使我知道代碼的一部分執行(即使用簡單的打印語句進行測試),也不會發生交換。我相信我使用指針的方式有些問題。任何人都可以建議嗎?
C和C++有怪異LIX。由於您使用的是iostream,因此您必須使用C++編譯器進行編譯。因此這個問題應該被標記爲C++。 – Mat
是的......實際上非常令人沮喪。我們應該用C編寫程序,但我們顯然需要cin.getline()函數(代碼的那部分已經由我的教授編寫)。我應該做的每件事都必須用C編寫。我已經添加了C++標記,因爲你已經提出了它。 – rphello101
@ rphello101你在什麼意義上「需要」cin.getline()函數?你可以通過在C中調用'fgets(buffer,sizeof buffer,stdin)'來做同樣的事情。另外,我建議你修改指針,你犯了一個微不足道的錯誤。 – 2013-09-29 04:43:17