السلام عليكم ورحمة الله وبركاته أخوتي في الله أسعد الله صباحكم أو مسائكم سنتحدث اليوم عن المؤشرات وكيفية تسخيرها لجعلها تؤشر إلى داله تمهيد إذا أردنا أن نرى عنوان متغير ما في الذاكره نستخدم الـ & كما هو موضح في الكود التالي:
int x;cout << &x << endl;
cout << myfunction << endl;
return_type (*pointer_name) (parameters_list) = function_name;
pointer_name(argument_list);// or(*poiter_name)(argument_list);
#include <iostream>using namespace std;int function1(int x) { return x * 10;}void function2() { cout << "Whatever!\n";}int main(void) { int (*fp1)(int) = function1; void (*fp2)() = function2; // or void (*fp2)(void) = function2; cout << fp1(10) << endl; // or cout << (*fp1)(10) << endl; (*fp2)(); // or (*fp2)(void); or fp2(); or fp2(void); return 0;}
return_type (*pointer_name[])(parameter_list) = { function1, function2, function3, ..... , functionN };
pointer_name[index](argument_list); // or (*pointer_name[index])(argument_list);
#include <iostream>using namespace std;int getSquare(int x) { return x * x; }int getCube(int x) { return x * x * x; }int getQuad(int x) { return x * x * x * x; }int main(void) { int (*fp[])(int) = { getSquare, getCube, getQuad }; for(int i = 0; i < 3; i++) cout << fp[i](10) << endl; // or cout << (*fp[i])(10) << endl; return 0;}