1. 程式人生 > >C語言應該增加交換值的關鍵字或語法

C語言應該增加交換值的關鍵字或語法

  用C/JAVA的人都知道,要兩個變數交換值,典型寫法如下:

int left  = 1;
int right = 2;
int temp;

temp  = right;
right = left;
left  = temp;

  這個寫法可真夠麻煩的。而這種情況經常發生,比如說兩個緩衝區交換資料。所以吾就想,咱C語言,能不能提供一個交換關鍵字,來簡化這種寫法。比如說叫xchange?這樣程式碼就可以簡化為:

int left  = 1;
int right = 2;

xchange left, right

  可能對於兩個緩衝區交換,有點麻煩。沒事,咱編譯器可以智慧處理嘛。
 

  有人一聽頭大了,這個關鍵字很常用,吾以前的程式碼中很多。這是個事嗎?當然不是。咱可以叫個別的名嘛,可以加個開關嘛,可以進行智慧判斷嘛(指令跟變數、函式不一樣)。

  或者乾脆模仿python的寫法:

int left  = 1;
int right = 2;

left, right = right, left

  這樣也可以充分利用CPU的優化,程式碼也精簡了很多。