一、函數無參數時細節
函數無參數時應該加上void
在c語言中一個函數
void f();
在使用時傳遞參數f(2);沒有報錯,而在c++中則會報錯
最好加上void來明確函數是無參數的
二、函數默認返回類型為int型
見下面程序
三、return默認返回1
細節:return不可返回執行棧內存中的指針,因為該內存在函數體結束時自動銷毀
四、void 指針++操作
void *p;
p++; //在ANSI編譯中錯誤、在GNU編譯器中p++和char*一致
#include輸出:a() { return 3; //return ; //直接寫成這個形式默認是返回 1 的 } b(int a, int b) { return a+b; } int main() { printf("func a return = %d\n",a(2)); // 函數無參數應申明為void,在c中不聲明傳了參數沒有報錯,在C++就會報錯,所以無論C/C++,函數無參數就申明為void printf("func b retunr = %d\n",b(300,5000)); // 此處說明函數無返回類型,默認返回int型 printf("-------------------------\n"); void *p; p++;// 使用編譯器gcc、mingw5編譯通過(即GNU),它們認為p++為char*類型的,使用VC6.0編譯錯誤(即ANSI) return 0; }