C: משתנה 64 ביט

  • פותח הנושא neko
  • פורסם בתאריך

neko

New member
C: משתנה 64 ביט

אני מחפש משתנה שיחזיק מפתח הצפנה בגודל 64 ביט. 1. איזה סוג משתנה אופטימלי לשימוש זה. נדרש שיהיה אפשר לעשות פעולות על הביטים שלו כמו <<< shifting ו xor? 2. אני מעוניין לקבל את המפתח בצורת char* כלומר string בבסיס hexa. איך אוכל להמיר את הטקסט מ-string בבסיס hexa למשתנה מספרי? חשבתי לעשות את כל העבודה עם משתנה double אבל הקומפיילר לא מאפשר ביצוע shifting על משתנה מסוג זה. בנוסף, אין משתנה מסוג unsigned double. תודה - גלעד (לא NEKO)
 

ברנדל

New member
נדמה לי

שבמע' 64 ביט, אתה לא יכול ליצור משתנה של 32 ביט גם אם אתה מאוד מאוד רוצה. בקשר לאלה השניה:
INT axtoi(LPCTSTR pch) { TCHAR ch; INT n = 0; while((ch = *pch++) != 0) { if (ch >= 'A' && ch <= 'F') { ch -= 'A'; ch += 10; } else { ch -= '0'; } n = 16 * n + ch; } return n; }​
 

neko

New member
אני מתכוון ל-C ולא ל-C++

לפי מה שאני מכיר, ב - C יש גדלים שונים למשתנים (למשל int הוא 4 ביט). המשתנה היחיד שאני מכיר של 64 ביט הוא double ואיתו יש לי בעיות כפי שתארתי קודם. גלעד
 
למעלה