ورود

View Full Version : مبتدی: چندتا سوال درباره ی c و c++



Mr FTHEL
شنبه 08 مهر 1391, 11:39 صبح
سلام
ببخشید من چندتا سوال داشتم
سی و سی پلاس پلاس هرچی کد مینویسیم مثل داس اجرا میشه پس چطوری برنامه فتوشاپ رو باهاش نوشتن؟
توی سی و سی پلاس پلاس مثه سی شارپ میشه از طرح استفاده کرد؟

با سی و سی پلاس پلاس میشه به پایگاه داده وصل شد؟
همیشه کد های سی و سی پلاس پلاس به صورت داس اجرا میشن؟

توی سی و سی پلاس پلاس میشه کد دیگر برنامه هارو اجرا کرد ؟ مثلا توی پی اچ پی میتونیم اچ تی ام ال بنویسیم

ممنون

مسعود اقدسی فام
شنبه 08 مهر 1391, 12:42 عصر
زمانی که Windows 3 به بازار اومد سیستم عامل خود داس بود که این ویندوز داخلش به عنوان یه برنامه اجرا می‌شد. فکر می‌کنید با چی نوشته شده بود؟

گرافیک ربطی به کنسول و ویندوز فرم نداره. در ضمن ++ Visual C هم داریم که با Command Prompt ( و نه داس) اجرا نمی‌شن. مثل #C هستش. قوی‌تر و گاهی پیچیده‌تر.

HTML زبان برنامه‌‌نویسی نیست.

داخل C می‌شه کد اسمبلی نوشت که قدرت زبان رو بالا می‌بره. چون می‌شه با ماشین مستقیم ارتباط داشت. حتی بدون توابع و دستورات خود C یا ++C

maktoom
شنبه 08 مهر 1391, 12:49 عصر
سلام
فتوشاپ؟! شما چرا راه دور میری؟ خود ویندوز هستش با سی پلاس پلاس نوشته شده.
موقع نصب ویندوز صفحات که پیشنهاد فرمت کردن رو میدهیا نشون میده داره چه اتفاقاتی میافته تمام اینا با بیس اولیه هستن. از ماحصل تجربه و کار برنامه نویسان بمرور شما توی برنامه هاتون مثلا می تونید یه بتن یا یه تیبل داشته باشید. کدهای اینا خیلی بیش از اون چیزی که بتونید تصور کنید. اما دیگه کمتر کسی پیدا میشه بره خودش یه باتن یا یه منو از اول بنویسه.
فکر می کنم اگه مقداری توی گرافیک کامپیوتر مطالعه کنید براتون مفید واقع بشه.

IamOverlord
شنبه 08 مهر 1391, 15:55 عصر
سلام دوست عزیز.
من هم قبلا این سوال برام پیش اومده بود.
اولا که برنامه های Console مانند، دو نوع هستند، ۱۶ بیتی (همون داسی!)، ۳۲ بیتی
نوع دوم کاملا با نوع اول فرق می کنه
نوع دوم واقعا مثل بقیه ی برنامه های ۳۲ بیتی ویندوزی اجرا می شه و برای باز کردن پنجره ی Console از تابع API استفاده می کنه، به خاطر همین شما در VB6 هم می تونی این نوع برنامه رو بنویسی.
نوع اول به دلیل مسائل سازگاری شبیه سازی می شه و در محیط ویندوز اجرا می شه. در نوع اول از توابع API ویندوز استفاده نمی شه بلکه از وقفه (Interrupt) ها استفاده می شه و شبیه سازی هست در غیر این صورت برنامه های ۱۶ بیتی با هم تداخل داشتن.
در زبان C هم بستگی داره که شما چه نوع برنامه ای تولید می کنی. ۳۲ بیتی یا ۱۶ بیتی. ۱۶ بیتی که واسه عهد DOS هست! و همشون حالت Console ای دارن. اما در ۳۲ بیتی شما از توابع API سیستم عامل Windows استفاده می کنی پس هم می تونی پنجره ی Console رو باز کنی، هم پنجره ی معمولی.
با تابع AllocConsole که در KERNEL32.DLL هست می شه در برنامه ی ۳۲ بیتی تون Console داشته باشین. با تابع CreateWindowEx در USER32.DLL هم می تونین پنجره ی جدید بسازین.
اما در حالت ۱۶ بیتی قضیه فرق می کنه و برنامه ها از وقفه ها استفاده می کنن و این نوع در واقع شبیه سازی هست و در اصل این نوع برای اجرا در حالت Real Mode پردازنده بود، در صورتی که Windows با غیر فعال کردن وقفه ها به حالت Protected Mode رفته.
شاید زیاد خوب توضیح نداده باشم. اگه جایی رو درست متوجه نشدی بگو. ضمنا در مورد اون انواع برنامه های Console انواع دیگه ای هم هست که خلاصه ی کار رو گفتم. برای مثال 64 بیتی هم شبیه ۳۲ بیتی هست. فقط می خواستم کلیت کار دستت بیاد.

Mr FTHEL
شنبه 08 مهر 1391, 22:30 عصر
ممنون از جواب همتون فقط من متوجه نشدم طبق گفته ی همتون میشه با c و c++ دکمه ایجاد و حالا یا هر کار گرافیکی دیگه ای کرد درسته؟ که وقتی برنامه exe اجرا میشه به صورت داس مانند نباشه؟

مسعود اقدسی فام
شنبه 08 مهر 1391, 23:14 عصر
ممنون از جواب همتون فقط من متوجه نشدم طبق گفته ی همتون میشه با c و c++ دکمه ایجاد و حالا یا هر کار گرافیکی دیگه ای کرد درسته؟ که وقتی برنامه exe اجرا میشه به صورت داس مانند نباشه؟

بستگی به میزان تسلط شما به این زبان، مفاهیم سیستم عامل و خیلی چیزای دیگه داره. در کل می‌شه.

maktoom
یک شنبه 09 مهر 1391, 08:31 صبح
کلیت باتن یعنی یه فضای با مختصات خاص در صفحه که پیکسلهای اون ناحیه به رنگ خاصی در میان. با انجام اکشن کلیک ماوس در اون ناحیه یه عملی انجام میشه. این کلیت باتن هستش.
همینطور که می بینید خیلی از اینطور چیزها کدنویسیشون انجام شده حالابصورت یه چیز آماده مورد استفاده قرار می گیره.

fardin3t
یک شنبه 09 مهر 1391, 08:36 صبح
سلام دوستان
میخواستم یک تاپیک جداگونه ایجاد کنم ولی دیدم این تاپیک ایجاد شده گفتم همین جا سوالم رو مطرح کنم.
میخواستم ببینم نظرتون راجع به توابع APi چیه ایا برای کار کردن با فریم ورک مثل QT لازم حتما با این توابع اشنایی داشته باشیم؟
سوال دیگه ای که داشتم اینه که ایا یک منبع خوب برای یادگیری این توابع در ++C وجود داره. البته این روزا تا دلتون بخواد گشتم اما چیز بدردبخوری پیدا نکردم.

IamOverlord
یک شنبه 09 مهر 1391, 14:25 عصر
سلام دوست عزیز.

میخواستم ببینم نظرتون راجع به توابع APi چیه ایا برای کار کردن با فریم ورک مثل QT لازم حتما با این توابع اشنایی داشته باشیم؟
تا اون جایی که می دونم نیازی نیست با توابع API ای که در DLL های Qt هست دست و پنجه نرم کنید. به جز شرایطی خاص. مثلا فرض کنید می خواید با Flat Assembler از Qt استفاده کنید. اون موقع باید توابع درون DLL هاش رو Import کنید.

Mr FTHEL
دوشنبه 10 مهر 1391, 12:41 عصر
ممنون ازتون حالا متوجه شدم
و یک سوال که اینو جواب ندادید و آخرین سوالم هست
با c میشه به پایگاه داده مثل sql server وصل شد؟ مثله vb c# و ...
ممنون

aidinMC
دوشنبه 10 مهر 1391, 13:45 عصر
ممنون ازتون حالا متوجه شدم
و یک سوال که اینو جواب ندادید و آخرین سوالم هست
با c میشه به پایگاه داده مثل sql server وصل شد؟ مثله vb c# و ...
ممنون

دوست من طرف اون بالا میگه ویندوز با سی و سی پلاس نوشته شده شما میگی میشه به دیتا بیس متصل شد؟
با سی ++ هرکاری دوس داری میتونی انجام بدی...