יום ראשון, 21 נובמבר, 2010
iPhone:% (אחוזים) NSString
כיצד להפוך את השלט אחוזים NSString? מבוא עצמו% יגרום NSString מנסה לנתח, אבל יחכה שלט "אחרי", אשר תאפשר לו לציין את סוג. מאז לא נמצא, זה לא מראה שום סימן באתר. הכין במיוחד למשימה זו, אם כן,%%, אשר פותר את הבעיה.
בנושא ערכים
אפשר לעקוב אחר התגובות לפוסט הזה באמצעות פיד RSS 2.0 . אתה יכול גם לכתוב הערות שלך , או לקשר להודעה זו בדף שלך.



















































זוהי תבנית printf
טירונים רבים בראש אוגוסט על אחוז זה כי מעבר להתעלם בספר אל סימן האחוזים ג -% - הוא תו בקרה במחרוזת התבנית. אחוז עבור כל תו נמצא במחרוזת הפורמט לקוח מתוך ערימה שבה הוא אורך טיעון שלם. עבור כל סימן אחוז נמצא שם הוא מחרוזת שטח הסתיים המציין כיצד הפרשנות של הטיעון קיבלה.
מחרוזת כפולה במתכונת של שיעור ("%%") מומר סימן אחוז אחד הפונקציה printf. באופן דומה, רצפי ג (המרה ברמה של המהדר), קו נטוי הפוך (\) הוא פקד המאפשר לך להוסיף כל התווים ASCII. מאפשר לך להוסיף קו נטוי הפוך רצף זהה - "\ \".
פורמט printf נראה כך:% [פרמטר] [דגלים] [רוחב] [דיוק.] [אורך] סוג
החשוב ביותר הוא הפרמטר היחיד חובה "סוג"
ד, ולהדפיס int כמספר עשרוני חתום. '% D' ו 'אני% "הן מילים נרדפות עבור הפלט, אבל הם שונים כאשר בשימוש עם scanf () עבור קלט.
להדפיס int חתום העשרונית.
F, F הדפס כפול רגילה (נקודה קבועה) ציון. "F" ו - "F" רק שונה איך בחוטים עבור מספר אינסופי או NaN מודפסים ('inf', 'אין סוף' ו 'נאן' ל 'נ', 'INF', 'אין סוף' ו 'NAN "עבור "F").
דואר, דואר הדפס ערך כפול בצורה סטנדרטית ([-] d.ddd דואר [+ / -] ddd). ההמרה E משתמשת E מכתב (במקום ה) להציג את המעריך. המעריך תמיד מכיל לפחות שתי ספרות, אם הערך הוא אפס, המעריך הוא 00 ב-Windows, המעריך מכיל שלוש ספרות כברירת מחדל, כגון 1.5e002, אבל זה יכול להשתנות על ידי פונקציה Microsoft ספציפי _set_output_format.
G, G הדפס דו בסימון או רגיל או מעריכי, לפי מתאים יותר בסדר גודל שלה. "G" עושה שימוש באותיות גדולות וקטנות, "G" עושה שימוש באותיות רישיות אותיות. סוג זה שונה במקצת סימון קבוע טעם משמעותי זה זירו מימין לנקודה העשרונית אינם כלולים. כמו כן, הנקודה העשרונית אינו כלול על מספרים שלמים.
X, X int הדפס חתום כמספר הקסדצימלי. "X" עושה שימוש נמוכה יותר במקרה אותיות "X" משתמשת במקרה העליונה.
להדפסה int חתום ב אוקטלי.
טביעת מחרוזת אופי.
ג הדפסה (הדמות) char.
עמ 'הדפס חלל * (מצביע void) בפורמט יישום מוגדר.
הדפסה n דבר, אבל לכתוב מספר התווים הכתובים בהצלחה עד כה את פרמטר המצביע שלם.
% הדפס מילולי "%" תו (מסוג זה אינה מקבלת כל הדגלים, רוחב, דיוק או אורך).
אתה צריך להיות על המשמר printf'em מעט באמצעות כי זה המנגנון שבו טירון יכול לירות ברגל.
נתונים niesanityzowanych העברה משתמש פותח הפורמט פגיעות להתקפה.
טעות נפוצה היא:
printf (ciag_od_uzytkownika);
התחביר הנכון הוא:
printf ("% s", ciag_od_uzytkownika);
או
שמה (ciag_od_uzytkownika);