PDA

View Full Version : سوال: تابع main میتونه آرگومان داشته باشه؟



mezood
چهارشنبه 23 بهمن 1392, 20:51 عصر
برنامه نویس مبتدی هستم و تا حالا ندیدم شروع بدنه 1 کد اینطوری باشه و تابع main آرگومان بگیره لطف میکنید اگر راهنمایی کنید.
void main(void)
int main(int argc, char* argv[])
{.
.
.
.
.
.
}

motherboard
چهارشنبه 23 بهمن 1392, 21:16 عصر
برنامه نویس مبتدی هستم و تا حالا ندیدم شروع بدنه 1 کد اینطوری باشه و تابع main آرگومان بگیره لطف میکنید اگر راهنمایی کنید.
void main(void)
int main(int argc, char* argv[])
{.
.
.
.
.
.
}

سلام دوست عزیز.همون طور که در ریاضیات خوندید درون یک تابع یک یا چند متغیر وجود داره.به اون متغیر به اصطلاح میگن ارگومان.تابعی که به صورت void هستش در واقعی تابعی بدون ارگومان میباشد.(البته مباحث دیگری هم در مورد این تابع هست).در سطر اول هم مثلا توع تابع int نیست و اون رو با void اورده درواقع تابعی بدون خروجیه .از انجا که مبتدی هستید پیشنهاد می کنم که در گوگل کتاب در مورد ++c رو دانلود کنید و مباحث را با دقت بخونید و برنامه نویسی کنید.چون تا مبحث تقدم ها و یک سری دستورات اولیه رو که برای شروع اموزش هست رو یاد نگیرید دونستن تابع سودی براتون نداره.

mezood
چهارشنبه 23 بهمن 1392, 21:38 عصر
حقیقتش من c++ پاس کردم و تو کتابمون همیشه کدها با int main() شروع میشد و با return 0; تموم میشد واسه همین فک میکردم تابع main فقط اینطوری کاربرد داره یعنی فک میکردم تابع main کلا قضیش با تابع های دیگه فرق داره این کد بالا رو هم تو 1 کتابی که مربوط به opengl هست دیدم

omid_kma
چهارشنبه 23 بهمن 1392, 22:01 عصر
حقیقتش من c++ پاس کردم و تو کتابمون همیشه کدها با int main() شروع میشد و با return 0; تموم میشد واسه همین فک میکردم تابع main فقط اینطوری کاربرد داره یعنی فک میکردم تابع main کلا قضیش با تابع های دیگه فرق داره این کد بالا رو هم تو 1 کتابی که مربوط به opengl هست دیدم
سلام اون کدی که دیدین مربوط به shader ه
اون 2 تا هم آرگومان های خط فرمان هستند
https://www.google.com/#q=+argv+%D9%88+argc+%D8%A8%D9%87+%DA%86%D9%87+%D8 %AF%D8%B1%D8%AF%DB%8C+%D9%85%DB%8C+%D8%AE%D9%88%D8 %B1%D9%86+%D8%9F+

rahnema1
چهارشنبه 23 بهمن 1392, 22:02 عصر
دوست عزیز آرگومان ورودی یعنی همون چیز هایی که داخل پرانتز قرار می گیرند نه اونی که پشت main قرار گرفته بنابراین اون چیزهایی که داخل پرانتز به نام arc و argv چیه؟پاسخ شما اینه که mian میتونه آرگومان ورودی داشته باشه و این ورودی ها را از خط فرمان یا cmd می گیره. حتما برنامه هایی دیده اید که در خط فرمان اجرا می کنید و بعد از اسم برنامه یک سری پارامتر ها را وارد می کنید در واقع اینها ، آرگومان های ورودی تابع main هستند و در تابع main میشه از اونها استفاده کرد