C 中引用的操作方法

2021-09-26 16:00:57 字數 727 閱讀 2312

在函式中定義的變數都是區域性變數,所以返回函式中的結果只能通過return或者指標。那在函式中有沒有辦法不用指標也可以達到修改引數的目的呢?

例如:

/*錯誤案例*/

/*三個字串比較大小,swap函式用來比較大小*/

#include#includevoid swap (char* p1, char* p2);

int main()

if (strcmp(a2, a3) > 0)

if (strcmp(a1, a2) > 0)

printf("%s\n%s\n%s\n",p1, p2, p3);

return 0;

}void swap (char* p1, char* p2)

在這段**中,swap函式的操作不會傳遞到主函式中,因此最終結果會按照原本的順序輸出p1,p2,p3。

#include#includevoid swap (char* &p1, char* &p2);       

int main()

if (strcmp(a2, a3) > 0)

if (strcmp(a1, a2) > 0)

printf("%s\n%s\n%s\n",p1, p2, p3);

return 0;

}void swap (char* &p1, char* &p2)

通過引用就可以順利的完成操作了

引用型別 操作方法

concat 方法 複製 concat 複製,複製後給新陣列新增新元素,多個陣列連線形成陣列 可以根據陣列中的所有項建立乙個新陣列。這個方法會先建立當前陣列乙個副本,然後將接收到的引數新增到這個副本的末尾,最後返回新構建的陣列。傳遞給 concat 方法的是一或多個陣列 若傳遞的值不是陣列,這些值就...

C 中File檔案操作方法

file類,是乙個靜態類,主要是來提供一些函式庫用的。靜態實用類,提供了很多靜態的方法,支援對檔案的基本操作,包括建立,拷貝,移動,刪除和開啟乙個檔案。file類方法的參量很多時候都是路徑path。file的一些方法可以返回filestream和streamwriter的物件。可以和他們配套使用。s...

C 的DataTable操作方法

1.將泛型集合類轉換成datatable 表中無資料時使用 public static datatable nulllisttodatatable ilist list for var i 0 i list.count i var array templist.toarray result.load...