שאלה בשפת C

ViPeR2004

New member
שאלה בשפת C

יש לי משתנה צאר נגיד viper char *viper; אני רוצה להציב בו את הצורה " שאני עושה viper = """; זה עושה שגיאה.... מישהו יכו לעזור לי?
 

vinney

Well-known member
נו באמת...

char *viper זה מצביע, אתה מנסה להציב בתוכו מחרוזת. מה שאתה צריך לעשות זה שני דברים : א. לוודא שviper מצביע למקום מוקצה בזכרון (תקצה עם malloc) ב. להעתיק למקום שאליו מצביע viper את הערך שאתה רוצה (תעתיק עם strcpy).
 

selalerer

New member
אני חושב שמה שהתכוונת לעשות זה:

char viper='\"';​
בכלל כל דבר שאתה רוצה להציג במחרוזת בC ובאופן רגיל מחרוזת לא מציגה אותו (כמו " או \ או %) אז אתה צריך לשים \ לפניו, אפילו בשביל להציג את עצמו:
viper='\\';​
וגם השימוש שלך פה בפוינטר * הוא לא נכון ולפי דעתי גם לא קשור למה שרצית לעשות. בהצלחה, סלע.
 
למעלה