یه سئوال دیگه داشتم . انگار تابع cout و ... تو فایل iostream.h هه
مگه همه ی تابع ها نشونه شون این نیست که با دو علامت پرانتز تعریف میشن؟ پس اینا چرا پرانتز ندارن؟ سئوال پست اول ام هم پابرجاست
Printable View
یه سئوال دیگه داشتم . انگار تابع cout و ... تو فایل iostream.h هه
مگه همه ی تابع ها نشونه شون این نیست که با دو علامت پرانتز تعریف میشن؟ پس اینا چرا پرانتز ندارن؟ سئوال پست اول ام هم پابرجاست
آقایون چرا تابع این جور نوشته میشه مشکلی نداره :
اما وقتی تابع Add را بعد از تابع اصلی بخایم بنویسیم ، باید پیش اعلان کنیم تابع Add رو ؟ (نوع مقادیرشو مشخص کنیم)کد:#include "stdafx.h"
#include <iostream>
int Add(int num1, int num2)
{
int addnum;
addnum = num1 + num2;
return addnum;
}
int _tmain(int argc, _TCHAR* argv[])
{
int a=2;
int b=3;
int c=Add(a,b);
std::cout << "c= "<<c<<std::endl;
return 0;
}
ینی این جوری مشکل داره چرا؟ :
تا اینکه این جوری پیش اعلان کنیم :کد:#include "stdafx.h"
#include <iostream>
int _tmain(int argc, _TCHAR* argv[])
{
int a=2;
int b=3;
int c=Add(a,b);
std::cout << "c= "<<c<<std::endl;
return 0;
}
int Add(int num1, int num2)
{
int addnum;
addnum = num1 + num2;
return addnum;
}
کد:#include "stdafx.h"
#include <iostream>
int Add(int, int);
int _tmain(int argc, _TCHAR* argv[])
{
int a=2;
int b=3;
int c=Add(a,b);
std::cout << "c= "<<c<<std::endl;
return 0;
}
int Add(int num1, int num2)
{
int addnum;
addnum = num1 + num2;
return addnum;
}
من چرا اولین بار تو vc++ کد مینویسم ، درست عمل میکنه اما وقتی دوباره ویرایشش میکنم ، تغییراتش اعمال نمیشه؟
لازمه که بگم موقع کامپایل ، یه پیام که همیشه میداد رو غیر فعال کردم . انگار از اون موقع به بعد این طور شد!
درود
پاسخ
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
بیشتر به خاطر بحث های کامپایلر ی هست.... از قدیم من یادم هست بوده و و باید الگو رو تعریف کرد در مواقعی که تابع خارج قرار میگیره
فعلا در ابتدا ی شروع زبان برنامه نویسی ، نیاز به درگیر شدن با این مسائل نیست...(از نظر من)
ممنوننقل قول:
فک کنم بخاطر اینه که بعد از فراخونی تابع ، نوشته شد
بله کامپایل نا دیده میگیره ، اون قسمت رو هنگام کامپایل کردن کد ها.نقل قول:
- - - Updated - - -
نیازمند توضیحات بیشتر و عکس(در صورت لزوم فیلم کم حجم)تا متوجه مشکل شویم.نقل قول:
برای استفاده از getch باید چی کار کرد؟
فایل اجرایی (exe) کجا ایجاد میشه که خودمون جداگانه اجرا کنیم؟
سلامکد:#include <iostream>
int Add(int, int);
int main()
{
int a=2;
int b=3;
int c=Add(a,b);
std::cout << "c= "<<c<<std::endl;
getchar();
return 0;
}
int Add(int num1, int num2)
{
int addnum;
addnum = num1 + num2;
return addnum;
}
در مسیر ی که پروژه رو ذخیره کردی، بعد از اجرا یا Build کردن اون، پوشه Debug و اونجا فایل EXE با نام خود پروژه موجود است.
با سلام!
سجاد جان چرا اینقدر پراکنده سوال پرسیدی...:1. (27):
اینا الگوی پروژه رو مشخص می کنن. توضیحات بیش تر در پیوند زیر:نقل قول:
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
داره! میشه با C++ هم فرم ساخت. وقتی داری پروژه رو ایجاد می کنی از بخش Visual C++ زیر شاخه ی Win32، گزینه ی Win32 Project رو انتخاب کن. بعد از ایجاد پروژه کلید های ترکیبی Ctrl+Shift+A رو همزمان پایین نگه دار و در پنجره ی باز شده، از قسمت Visual C++ زیر شاخه ی UI، گزینه ی Windows Form رو به پروژه اضافه کن.نقل قول:
فکر کنم دوستان در پست 2 و 3 به خوبی جواب دادن و این جواب ها نه تنها متناقض نبودن بلکه هم دیگه رو تکمیل می کردند. پیشنهاد می کنم دوباره بخونی.نقل قول:
موفق باشی
آرمین
ممنون گلپسران
چرا تو ++C حلقه for رو به این شکل ها بنویسیم مورد دار داره؟ :
یاکد:for (int i = 1;5;i++)
{
cout << i;
}
و حتما باید این طور نوشت :کد:for (int i = 1;i=5;i++)
{
cout << i;
}
ینی اگه کسی نخاد علامت => رو بزاره و فقط علامت = رو بزاره ، راهی نداره؟ در صورتی هه که کامپایلرش موقع اجرا گیر نمیده اما عجیب و قریب اجرا میشه و با تعداد تکرار بسیار زیادکد:for (int i = 1;i<=5;i++)
{
cout << i;
}
اما هیچ چی به خوش ترتیبی و خوش دستی و سادگی زبان لوا نمیشه :great: با اونکه از زبان C ساخته شد اما یه آرایه اش هم ساده تر و هم منعطف تر از این زبانه و هم آرایه ی لوا برابری میکنه با آرایه و هم استراکچر زبان ++C و حتی بسیار گسترده تر و منعطف تر از این دو
همیشه برام سئواله که چجوری میشه که لوا که تو C نوشته شد ، این قدر به سینتک ها گیر نمیده (تقریبا میشه گفت سینتک پایانی تابع ها و متغییرها رو نداره ومن حتی یه بارم نزاشتم و هیچ گیری نداد) اما C یا ++C خودشون به شدت گیر میدن؟!!!
دومین سئوال اینکه چجوری حفظ کردین که تو این همه توابع و فضای نام بسیار زیاد ، کدوم تابع ، توی کدوم هدر فایل هه؟ این برام سخته و هم گیج کننده هست که حفظ کنم کدوم تابع توی کدوم هدر فایل هست که قبلش اون هدر رو تو پیش پردازنده بیارم. (اگه پیش پردازنده ی مورد نظر پیوست نشه که حتی اسم اون تابع رو توی لیستش وقتی شروع به نوشتن میکنیم هم نمیاره). من حتی گاها اسم تابع رو هم اول شو برام سخته به یاد بیارم. مثلا تابع setprecision که تو هدر iomanip هست رو هنوزم به زور نتونستم اسم این دو رو حفظ کنم
روش راحت تر برا یادگیری و به یادآوری تابع و هدر فایل اش نیست؟ ینی این همه برنامه نویس های ++C این همه هدر و نام تابع هاشونو دونه دونه حفظ میکنن؟
درباره ی ورودی تابع چی؟ توی توضیحات tooltip اون تابع که توی ویژال استودیو میاره ، تقریبا چیزی نمیفهمم