使用qsort對不同型別進行排序:
int cmp_string(const void *s, const void *t)
int cmp_int(const void *x, const void *y)
else if (*_x < *_y)
else
}int cmp_float(const void*m, const void *n)
else if (*_m < *_n)
else
}int main()
; int len = sizeof(str) / sizeof(str[0]);
qsort(str, len, sizeof(char*), cmp_string);
int arr = ;
int size = sizeof(arr) / sizeof(arr[0]);
qsort(arr, size, sizeof(int), cmp_int);
float a = ;
int sz = sizeof(arr) / sizeof(arr[0]);
qsort(a, sz, sizeof(float), cmp_float);
system("pause");
return 0;
}
模擬實現qsort :
了解qsort的基本引數.
void qsort (void *start,size,sizeof(int),int (*cmp)(const void*,const void*))
//(陣列首位址,陣列大小,每個元素大小,cmp函式);
//字串在傳資料大小時需要用 sizeof(char*)
具體的**實現:
int cmp(const void *x, const void *y)
//int cmp_int(const void *x, const void *y)
//// else if (*_x < *_y)
// else
////} cmp 另一種實現方法
void swap(char *x, char *y, int width)
}void my_qsort(void *arr, int sz, int width,int(*cmp)(void*,void*))
} if (flag == 0) }}
int main()
; int sz = sizeof(arr) / sizeof(arr[0]);
int i = 0;
my_qsort(arr, sz, sizeof(int), cmp);
for (; i < sz; i++)
printf("\n");
system("pause");
return 0;
}
不得不說的「跳槽」
現實中不難發現 越是高階人才,適合的機會就越少 的現象。身處金字塔中上層的人員,無論是職位還是薪水,起點都很高,這客觀上造成適合的職位機會少,職業路徑轉換成本過高等問題。我個人認為,it技術高層人士,如果要跳槽,務必要注意三宜和三忌。忌 病急亂投醫 宜 方法得當 公升遷至較高職位的人,大多都多年不找...
關於基礎,不得不說
最近遇到好多問題,都與基本概念相關。忍不住,就想多說幾句。研究生面試,我出了乙個問題,乙個100khz的方波訊號,幅度大約是幾伏的數量級,想測量其有效值,用什麼儀器,怎麼測?多數學生一臉茫然,搞的我不好意思,慚愧題目是不是太難了。我急了,問學生,乙個1.5v的電池,其電壓有效值是多少?學生問我,直流...
ios icon 不得不說的故事
圖示是ios程式包所必需的組成部分。如果你沒有提供程式所需的各種尺寸的圖示,程式上傳發布時可能會無法通過驗證。ios程式為兼顧不同的應用場景,定義了多個不同規格的圖示,並以不同的命名區分 圖示名稱 大小圓角 用途必需 icon.png 57 x 57 10px 用於程式商店和在iphone ipod...