מהו word ב С# ?

VoidPointer

New member
מהו word ב С# ?

שאלה שלי היא כזאת .. (ותסלחו לי אם זה נשמע לכם דבילי - אני תמיד מתבלבל בעניינים האלה ) יש ב С++ סוג נתונים ששמו word . אם אני לא טועה זה בעצם 16bit unsinged integer . אז זה אומר שב .NET זה בעצם UInt16 ? אבל הקטע שכל סוגי הנתונים תלויים ב compiler ( וגם במכונה שעליה רץ הקוד ) ... אז מה בעצם קובע , איך יודעים ? אשמח לשמוע גם תשובה כללית שמבהירה את העניין של המרת סוגי נתונים וגם תשובה ספציפית לגבי word . ( וכמו שניחשתם - אני מבצע הסבה של קוד שנכתב ב c++ ל C# ) תודה
 

gilad g

New member
לא הבנתי את השאלה.

unsigned 16 but זה unsigned 16 but זה unsigned 16 bit, לא משנה באיזו שפה... מה עוד אתה רוצה לדעת?
 

VoidPointer

New member
השאלה שלי היא ..

האם word ברוב הcompilers , הוא בד"כ 16bit unsigned integer - כמו ב compiler של VC++ ? לדוגמא - יש compilers שבהם word אינו מוגדר כך , אלא לדוגמא כ 32bit unsigned int ( מה שדרך אגב ב VC++ נקרא DWORD=double word , אם אני לא טועה ) אני כרגע משכתב תוכנית שנכתבה ב c++ , ל C# . הבעיה שאין לי מושג עם איזה compiler קימפלו את הקוד שאני משכתב , ולכן אני לא יכול לדעת למה שווה word . טוב.. בעצם זה כנראה הופך את השאלה שלי לקצת בעייתית , מה שמשאיר לי את השיטה של ניסויים . ( ד"א נראה לי שהקוד שאני מעתיק היה אמור לרוץ על Linux )
 

pagis

New member
WORD ו DWORD בשפת C

טוב, זה לא בדיוק קשור לפורום הזה אבל WORD הוא תמיד בן 2 byte ו DWORD הוא תמיד WORD כפול (כלומר 4byte). הקומפיילר מתרגם את הביטוי WORD או DWORD להוראות למערכת ההפעלה להקצאת זיכרון, וההוראות האלו הן ב bit-ים, כך שמערכת ההפעלה או המכונה ממש לא קשורה לזה.
 
למעלה