函數指針 與 指針函數

/*-----函數指針 + 出參-----*/ #include  #include  #include  char *GetString(char **p) {     *p = (char *)malloc(11);     strcpy(*p,"hello world");     return *p; } int main() {     char *pStr = NULL;           char *pStr2 = GetString(&pStr);     printf("----pStr=[%s]\n",pStr);     printf("----pStr2=[%s]\n",pStr2);     if(NULL != pStr)     {         printf("---free pStr---\n");         free(pStr);     }     if(NULL != pStr2)     {         printf("---free pStr2---\n");         free(pStr2);     }     return 0; } /*-----指針函數------*/ #include  #include  #include  int Add(int iX,int iY) {     return (iX + iY); } int Sub(int iX,int iY) {     return (iX - iY); } int Div(int iX,int iY) {     return (iX / iY); } int Mul(int iX,int iY) {     return (iX * iY); } int Fun(int iX,int iY,int (*fun)(int,int)) {     int iRet = 0;     iRet = (*fun)(iX,iY); } int main() {     int iRet = 0;     int iX = 10,iY = 2;     iRet = Fun(iX,iY,Add);     printf("--Add--iRet=[%d]\n",iRet);     iRet = Fun(iX,iY,Sub);     printf("--Sub--iRet=[%d]\n",iRet);     iRet = Fun(iX,iY,Div);     printf("--Div--iRet=[%d]\n",iRet);     iRet = Fun(iX,iY,Mul);     printf("--Mul--iRet=[%d]\n",iRet);     return 0; }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章