今天被要求编写一个C/C++冒泡算法的程序,心想这还不是手到擒来的事儿,虽然最近都是用Javascript程序,不多写C/C++程序,可是好歹也用过那么多年的C语言;算法
首先想的是怎么让本身的代码看上去更高大上一点,怎么着也得能自动识别数组的长度吧:因而初版程序以下,结果以下数组
看到结果,非常惊讶,为何是2呢?看到后面我列出可执行文件的类型,应该知道,这个长度是指针的长度,64bit,恰好两个字节。说明sortof求得是指针的长度,而非数组的长度。函数
仔细想一想,函数的参数只能传递指针,不能直接传递数组;指针
因此,要想传递数组,必需要传递数组首地址指针(通数组的类型一致),以及数组的长度,用来表示数组的结尾。blog