سلام دوستان
می خواستم بدونم منظور از preprocessor directive در برنامه نویسی c++ چیه ؟
ممنون
Printable View
سلام دوستان
می خواستم بدونم منظور از preprocessor directive در برنامه نویسی c++ چیه ؟
ممنون
سلامنقل قول:
در این دستور student a={0} تمامی متغیرهای عددی صفر رو میگیرند
حتی اگر آرایه هم بود grade، اگه به این صورت مینوشتی تمامی خونه های اون آرایه مقدار صفر میگرفتند
یا اگه int life; هم داشتی مقدارش برابر با صفر قرار میگرفت
به این مثال هم نگاه کن
کد:struct student{
char name[20];
int nomre[20];
}
------------------
student a = {"masoud",{19,20}};
این میاد name رو برابر با masoud قرار میده و و به ترتیب 19 رو در nomre[1] و 20 رو در nomre[2] قرار میده
نقل قول:
سلام
کد:http://www.cplusplus.com/doc/tutorial/preprocessor/
عزیز من که ارایه ای تعریف نکردم که این عناصرش رو صفر بده.نقل قول:
یک ساختار تعریف کردم و یک متغیر براش به نام a تعریف کردم که مقداری حافظه برام میگیره
این به کجا صفر میده؟ !!!
یک سوال دیگه
مثلا
int life
float x
وقتی من بگم s={0} این مقدار life رو فقط صفر میکنه و کاری به float نداره دیگه؟
نقل قول:
خب منم جواب سوالتو دادم دیگه
گفتم تمامی متغیرهای عددی رو برابر با صفر قرار میده
اینجا هم life صفر میشه هم x
اون مثال هم برای فهم بیشتر بود :31:
خوب یعنی شما میگی هر متغیری که ایجاد بشه جدید مقدارش صفر میشه درسته؟نقل قول:
راستی وقتی ما میزنیم s={0} خوب این صفر یکی هست و اونم مال int هستش
اگر s={0,0} بود باید float هم بده صفر
:13:
قسمت پررنگ هم من منظورتو متوجه نشدم!!!نقل قول:
درست میگی تو این مثال s={0,0} هم میاد همین کارو میکنه
اما یه چیز دیگه هم اینجا هست
وقتی تو میای مقدار دهی اولیه میکنی اگه بنویسی s={0} چون اینجا تعداد مقدارها از عناصر موجود در ساختمان کمتره به طور اتوماتیک (به غیر از اولی که خودت مقدار دهی کردی) متغیرهای عددی رو برابر با 0 قرار میده و متغیرهای رشته ای رو برابر با NULL
قسمت پر رنگ منظورم این بود که این یعنی برعکس ارایه هست؟نقل قول:
ارایه اول میسزای مثلا ا 100 خانه. بعد صفر میدی به همش میره و بیشتر از اون دیگه صفر نمیشه
اما ساختار هر متغیری که ما بعد ایجاد میکنیم صفر میریزه توش خودکار؟
چون float grade که ارایه نیست که ما بهش صفر بخواهیم بدیم.
اقا تشکر از شما خیلیلی ممنون :11: :40:
بازم یخرده گنگ بود :31:شرمنده من گیجمنقل قول:
اما اگه منظورت اینه هر متغیری از نوع Student که تعریف میکنید همین رفتار باهاش میشه نه :31:
چون اینجا گفتی student s={0} خب قطعا فقط متغیرهای مربوط به S این رفتار باهاشون میشه
یا شایدم منظورت اینه که ما یه متغیر بیایم به ساختمان student اضافه کنیم مثلا int masoud در این صورت بله برای اون هم صفر در نظر میگیره :31:
خواهش میکنم :20:
اقا سوال اخر :31:نقل قول:
int life
float dar
double divar
student s={0,0}
تو این مورد باز همه صفر میشن ؟ یا فقط life و dar?