السلام عليكم
الكود
[color= #0000ff;]char [color= #000000;]*pstr[color= #000000;][[color= #000000;]] [color= #000000;]= [color= #000000;]{ [color= #A31515;]"as",[color= #A31515;]"ad",[color= #A31515;]"af",[color= #A31515;]"ag"[color= #000000;]};
[color= #0000ff;]char so[color= #000000;][[color= #000000;]] [color= #000000;]= [color= #000000;]{[color= #A31515;]'m',[color= #A31515;]'o',[color= #A31515;]'k',[color= #A31515;]'a'[color= #000000;]};
[color= #0000ff;]char[color= #000000;]* pso [color= #000000;]= [color= #000000;]&so[color= #000000;][[color= #ff0000;]0[color= #000000;]];لماذا فى المصفوفة الأولى لابد أن يكون المتغير من نوع مؤشر على char
و حينما لا يكون كذلك يخرج لى خطأ too many init.
بينما فى المصفوفة الثانية لابد أن يكون نوع المتغير char و ليس char*
و فى حالة جعله كذلك يخرج لى هذا الخطأ بعدد عناصر المصفوفة
اقتباس'initializing' : cannot convert from 'char' to 'char *
و فى حالة إذا أردت ان أحصل على مؤشر على المصفوفة الثانية لابد من الحصول عليه من السطر الثالث
و لا أستطيع أن أكتب
char* pso = &so
و ذلك يخرج لى خطأ لا أفهمه
اقتباس'initializing' : cannot convert from 'char *(*__w64 )[4]' to 'char *
أنا أعلم أن هذه الأسئلة من الممكن أن يظنها البعض ساذجة و لكنى بدأت البرمجة من الدوت نت و ليس من سى
لذلك فأنا أسير عكس كل الناس :D
من أعلى إلى أسفل و ليس من أسفل إلى أعلى :huh:
و لا أقصد أن لغة السى بلس بلس متدنية المستوى و لكن الدوت نت فيه wrapping يجعل المبرمج ليس له علاقة على الإطلاق بأقل الأشياء بساطة فى أى لغة أخرى :S

