פורסם 2007 באוגוסט 1018 שנים ב CU לא טוב.. ואם כבר פתחתי אתם יכול להביא את כל ה%X שיש, חיפשתי באינטרנט...
פורסם 2007 באוגוסט 1018 שנים מחבר אני דווקא חושב שזה 2 אותיות, יכול להיות.ואני יגיד לך תאמת נמאס לי לבזבז את הזמן על סינטקס ושטויות כאלה.
פורסם 2007 באוגוסט 1018 שנים %luלקלט בבסיס עשרוני.צודק, באמת 2אבל חיפוש אחד מתאים בגוגל מניב את התוצאות הרצויות.כאן יש, אני מקווה, את מה שאתה צריךhttp://www-ccs.ucsd.edu/c/lib_prin.htmlחיפוש כזה יעשה את העבודה:"unsigned long" + printfאולי הייתה לך בעיה של שגיאת כתיב"unsegned "
פורסם 2007 באוגוסט 1018 שנים מחבר תודה!תאמת ניסיתי כל מיני חיפושים ביניהםunsigned long "%u"ועוד כמה אותויות, אבל לא עזר.[br]פורסם בתאריך: 10.08.2007 בשעה 16:58:10לא נראה לי שזה טוב, כי כשאני עושה את המשתנה INT וקולט עם %D פונקציה מסויימת עובדת לי, אבל כשאני מחליף לlu הפונקציה מציגה לי ערכים לא הגיוניים.עריכה:0 דאבל, סורי.
פורסם 2007 באוגוסט 1018 שנים מחבר int iFromRight(unsigned long n, int i){ if(i==1) return(n%10); return(iFromRight(n/10,i-1));}מחזיר את המספר הI מצד ימין
פורסם 2007 באוגוסט 1018 שנים הפונקציה מחזירה לך משתנה מסוג int. היצוג שלו בזכרון שונה מסוג long ומ Un Long. אחרי שאתה מקבל את הספרה, אתה מדפיס אם תו הסבה %d או %UL?כי אם %D זה צריך לעבוד (ועובד) בלי בעייה.
פורסם 2007 באוגוסט 1018 שנים אז פה הבעייה, המשתנה שהפונקציה מחזירה הוא INT. INT ו ULONG נשמרים בזכרון בצורה שונה, ה %D וה %UL מציניים לקומפילר איזה סוג של המשתנה הם אמורים לקרוא ובאיזו צורה.מה שבעצם קורה זה שאתה מנסה לקרוא INT לא בצורה בה הוא שמור( משלים ל 2) אלה בצורה שבה ULONG שמור, והוא קורה את הנתונים בצורה שונה. int dig; unsigned long num = 12345; int numDig = 3; dig = iFromRight(num,numDig); printf("%d \n", dig);עובד תקין.
פורסם 2007 באוגוסט 1018 שנים תיקון, זה גם עובד אם %LU בהדפסה משום מה, אולי כי זה ערך שלם( צריך לבדוק את הדרך שבה ULONG מאוכסן ). תכל מקרה, תגיד אם זה עובד, אם לא אזיכול להיות שהבעייה במקום אחר.
פורסם 2007 באוגוסט 1018 שנים מחבר כשאני רושם LU זה לא טוב, כשאני משתמש ב D זה טוב..יכול להיות שזה משהו אצלך..
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.