שאלה ב C(מצביעים)

שאלה ב C(מצביעים)

נניח שיש לי את הכתובת של מערך מסויים בפונקציה 1 איך אני מעביר את הכתובת של המערך לפונקציה 2? אם אפשר בבקשה לשים דוגמא פשוטה או הסבר מה שיהי יותר טוב תודה
 
דוגמה

int f2(int arr[]) { .... do something with arr.... } int f1(int arr[]) { /* pass arr to f2: */ f2(arr); }​
אני מקווה שלזה התכוונת...
 
מה שאני עשיתי זה כך

int Showtime() { int i=0; int *StCheck,*yahoo; StCheck=(int*)malloc((Size)*sizeof(int*)); yahoo=StCheck; if(StCheck==NULL) { printf("Failed To Allocate Memory!!!"); } while(i!=Size) { *StCheck=rand()%45+1; StCheck++; i++; } printf("%p",StCheck); printf("\n%p",yahoo); // CheckNumbers(yahoo); return(yahoo); }​
אבל ההמהדר בוכה לי ואומר and Settings\Owner\Desktop\New Folder\Cpp1.c(171) : warning C4047: 'return' : 'int ' differs in levels of indirection from 'int *' אני מנסה להחזיר כתובת מה אני צריך לעשות?
 

g u y c o h e n

New member
שים לב רק

שגם המשתנה שמקבל את הערך המוחזר מהפונקצייה צריך להיות גם מסוג *int.
 
למעלה