اشاره گرها

اشاره گرها و آدرس های ارسالی به تابع در برنامه نویسی C

اساطیر زبان

در این آموزش به کمک مثال های مختلف با شیوه ارسال آدرس ها و اشاره گرها به عنوان آرگومان به تابع آشنا خواهید شد. در برنامه نویسی C می توانید آدرس ها را به عنوان آرگومان به تابع ارسال کنید.

برای گرفتن آدرس در تعریف تابع، از اشاره گرها استفاده می شود. به دلیل اینکه اشاره گرها می توانند آدرس را در خود ذخیره کنند.

 


برنامه نویسی شبکه معماری کامپیوتر هوش مصنوعی و تجاری

توی این پک فوق العاده، صفرتاصد مبانی برنامه نویسی رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با صفرتاصد مبانی برنامه نویسی اپلیکیشن بزن، پروژه محور یاد بگیر و حسابی پول در بیار! 


 

مثال: ارسال آدرس ها به تابع

#include <stdio.h>

void swap(int *n1, int *n2);

int main()

{

int num1 = 5, num2 = 10;

// ارسال آدرس به تابع

swap( &num1, &num2);

printf(“num1 = %d\n”, num1);

printf(“num2 = %d”, num2);

return 0;

}

void swap(int* n1, int* n2)

{

int temp;

temp = *n1;

*n1 = *n2;

*n2 = temp;

}

خروجی

num1 = 10

num2 = 5

آدرس های num1 و num2 با استفاده از دستور swap(&num1, &num2); به تابع swap() ارسال می شوند.

اشاره گرهای n1 و n2 این آرگومان ها را در تعریف تابع پذیرش می کنند.

void swap(int* n1, int* n2) {

… ..

}

با تغییر *n1 و*n2 در داخل تابع ()swap ، مقادیر num1 و num2 نیز در داخل تابع ()main تغییر می کنند.

*n1 و*n2 در تابع ()swap جابجا شده اند، در نتیجه num1 و num2 نیز جابجا می شوند.

توجه داشته باشید که تابع ()swap هیچ مقداری بر نمی گرداند و نوع بازگشتی آن void است.

مثال ۲: ارسال اشاره گرها به تابع

#include <stdio.h>

void addOne(int* ptr) {

(*ptr)++; // اضافه می کند *ptr یک واحد به

}

int main()

{

int* p, i = 10;

p = &i;

addOne(p);

printf(“%d”, *p); // 11

return 0;

}

در اینجا، مقدار ذخیره شده در i، *p ابتدا برابر ۱۰ می باشد سپس اشاره گر p به تابع ()addOne ارسال شده است. در تابع ()addOne، اشاره گر ptr این آدرس را می گیرد. در داخل تابع مقدار ذخیره شده در آدرسی که ptr به آن اشاره می کند، با دستور (*ptr)++;یک واحد افزایش می یابد. چون هر دو اشاره گر ptr و p آدرس یکسانی دارند پس *p در ()main نیز برابر با ۱۱ شده است.

تفاوت پک های حرفه ای ما با آموزشهای رایگان: بطور خلاصه از زمین تا آسمان! 1-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in,

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست