נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: כל נסיונותי להפוך מחרוזת למספר עולים בתוה

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
pssheba
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 20 June 2005 בשעה 18:13 | IP רשוּם
ציטוט pssheba

שלום !
ברצוני לחלץ מספר ממחרוזת אך הדבר לא עולה בידי.
להלן 4 אפנים בהם ניסיתי לבצע והשגיאות שהעליתי בחכתי:
נסיון 1, דרך מצביע למערך:

קוד:

#include <cstdlib>
 
#include <iostream>
using std::cout;
 
#include <string>
using std::string;
 
#include <cstring>
 
int main()
{
   char *myDrink = "Coffee 4 2";
   int myD4 = myDrink[7];
   cout << "\nmyD4 is: " << myD4; // i get 52 !
   return 0;

אני מקבל 52 במקום 4 !

נסיון 2, מערך מסוג char

קוד:

char yourDrink[10] = "Coffee 4 2";
   int yourD4 = yourDrink[7];
   cout << "\nyourD4 is: " << yourD4; // i get 52 !

גם במקרה זה אני מקבל 52 במקום 4.

ניסיון מס. 3 עבודה עם משתנה מסוג string:

קוד:

string ourDrink = "Coffee 4 2";
   int ourD4 = ourDrink.substr(7,1);  // cannot convert 'string' to 'int'

המהדר מפיק את הודעת השגיאה הבאה: cannot convert string to int

ניסיון מס. 4: שימוש ב atoi:

קוד:

string ourDrink = "Coffee 4 2";
   int ourD4 = atoi(ourDrink.substr(7,1));  // could not find a match to atoi

המהדר מפיק הודעת שגיאה: couldnt find a match to atoi

מישהו יכול לתקן את הקוד שכתבתי או להפנות אותי לסוג אחר של קוד באופן  שאצליח לחלץ את המספר מהמחרוזת ?
תודה !

חזרה לתחילת העמוד הצג את כרטיס החבר של pssheba חפש הודעות אחרות של pssheba בקר בדף הבית של pssheba
 
ניר
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 12 January 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 3296
נשלח בתאריך: 20 June 2005 בשעה 18:21 | IP רשוּם
ציטוט ניר

מקרה 1+2 קיבלת את הערך ASCII של התו.

atoi צריך include כלשהו, לא עולה לי בראש, אבל אפשר למצוא בקלות..

תיקון ל-1:

קוד:
#include <cstdlib>
 
#include <iostream>
using std::cout;
 
#include <string>
using std::string;
 
#include <cstring>
 
int main()
{
   char *myDrink = "Coffee 4 2";
   int myD4 = myDrink[7] - '0';
   cout << "\nmyD4 is: " << myD4; // i get 52 !
   return 0;
}


__________________
מספר האייסיקיו שלי ו/או כתובת ה-MSN שלי אינם מהווים מוקד תמיכה
חזרה לתחילת העמוד הצג את כרטיס החבר של ניר חפש הודעות אחרות של ניר בקר בדף הבית של ניר
 
pssheba
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 21 June 2005 בשעה 19:04 | IP רשוּם
ציטוט pssheba

אני מודה לך !

אנסה זאת ואם לא ילך אחזור.

תודה ולא להתראות (אם התיקון שלך יצליח)...

חזרה לתחילת העמוד הצג את כרטיס החבר של pssheba חפש הודעות אחרות של pssheba בקר בדף הבית של pssheba
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה