פורסם 2008 במרץ 317 שנים הבנתי שמשתמים בMALLOC כאשר רוצים להגדיר מערך דינמי שניתן לשנות את הגודל שלו.אפשר לראות תוכנה קצרה שמשתמשת ב MALLOC? הגדרת מערך דינמי ושינוי הגודל שלו.תודה, מושיקו
פורסם 2008 במרץ 317 שנים http://www.cplusplus.com/reference/clibrary/cstdlib/malloc.htmlגגל malloc example בשביל עוד דוגמאות.
פורסם 2008 במרץ 317 שנים מחבר #include <stdio.h>#include <stdlib.h>int main (){ int i,n; char * buffer; printf ("How long do you want the string? "); scanf ("%d", &i); buffer = (char*) malloc (i+1); if (buffer==NULL) exit (1); for (n=0; n<i; n++) buffer[n]=rand()%26+'a'; buffer='\0'; printf ("Random string: %s\n",buffer); free (buffer); return 0;}אם הבנתי נכון את התוכנית, אז היא מושם תו אקראי במערך BUFFER, כולל תו סיום. לאחר מכן מודפס המערך והמקום בזכרון משוחרר...rand()%26+'a' - לוקח מס' אקראי, מחלק אותו ב-26 ולשארית מויף את הערך ה ASCII של a, זה נכון?printf ("Random string: %s\n",buffer); - אם לא רושמים איזה חלק במערך הוא מדפיס אותו עד תו הסיום?
פורסם 2008 במרץ 317 שנים קודם כל, כשאתה מכניס קוד - תשתמש בטג קוד (כפתור # למעלה) כדי שיהיה קריא יותר.rand()%26 עושה מה שאמרת, שזה בעצם שקול להגרלת מספר אקראי בין 0 ל-25. כשמוסיפים לו 'a', אז זה בעצם שקול לאות בין 'a' ל-'z'.אכן, printf שמקבלת מערך של char (כלומר מחרוזת) מדפיסה מתחילתו ועד '0\'.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.