لدي string داخل loop في كل مرة يجب أن تأخذ قيمة جديدة، لذا قبل أن أعيطها أي قيمة جديدة أحتاج أن أعيدها إلى حالتها البدئية، و إلا سيتبقى لي بعض الحروف من القيمة السابقة، البحث على الأنترنت قادني إلا هاته الطريقة
char string [] = "value";
string[0] = '\0';
لكن هذا لا ينفع، بالرغم أن بعد طباعة قيمة string لا يظهر اي شيء، فإن قيمة string ما زالت موجودة في الذاكرة، و بمجرد أن أقوم بتغيير قيمة [string[0 إلى أي شيء آخر، ستظهر قيمة string من جديد مثلا
char string [] = "value";
string[0] = '\0';
puts(string);//this will print nothing
string[0] = 'a';
puts(string);//this will print "atring"
جربت الكثير غير هذا، كأن أغير جميع الحروف إلى '0\' لكن هذا لم ينفع
جربت أيضا دالة strcpy() و لم تنفع
طالب علوم حسوب جديد، و مشروعي الحالي (لعبة بسيطة) يعتمد على هذا، أتمنى من لديه فكرة أو اقتراح، أن لا يبخل بالمساعدة.
from حسوب I/O - الأكثر شيوعاً http://ift.tt/2gJGdBf
ليست هناك تعليقات:
إرسال تعليق
دائماً، رأيكم يهمنا،