ویرگول
ورودثبت نام
امیرحسین ناظوری
امیرحسین ناظوری📕 عاشق یادگیری و به اشتراک‌گذاری دانش -- آیدی من تو شبکه های اجتماعی : mrNazouri13
امیرحسین ناظوری
امیرحسین ناظوری
خواندن ۳ دقیقه·۵ ماه پیش

ساختار اولیه‌ی زبان برنامه نویسی C

ویدیو مربوط به این مقاله: (کلیک کن)

به کد زیر دقت کن:

#include <stdio.h> int main() { printf("Hello"); }

تو خط اول گفتم فایلی به اسم stdio.h رو وارد کن، چون توی برنامه‌ایی که دارم مینویسم، میخوام از چیزهایی استفاده کنم که داخل اون فایل وجود داره.
دستور include# یه دستور پیش‌پردازندست (Preprocessor) و قبل از شروع کامپایل اصلی، میاد کل محتوای فایل مورد نظر رو کپی میکنه و همونجا که نوشته شده قرار میده. تو مثال کد بالا، کل کدهای داخل stdio.h (که شامل تابع printf هست) کپی میشه تو برنامت.
کلمه stdio یعنی Standard Input/Output یعنی چیزهایی مثل printf یا scanf و... که برای نوشتن و خوندن از ترمینال استفاده میشه داخلش هست.
تو زبان C فایل‌ها و کتابخونه‌ها توسط include# و تو دو حالت وارد میشن.
حالت اول (استفاده از <>): این رو وقتی استفاده میکنی که بخوای یه فایل/کتابخونه استاندارد یا سیستمی رو وارد کنی. این فایل های سیستمی تو مسیری تحت عنوان system include path قرار دارن و کامپایلر تو این مسیر دنبال این فایل ها میگرده. مثال:

#include <math.h> #include <stdlib.h>

حالت دوم (استفاده از دابل کد): این رو وقتی استفاده میکنی که بخوای یه فایل h. که خودت ساختی یا توی مسیر پروژه‌ات هست رو وارد کنی. مثال:

#include "myfunction.h"

وقتی از " استفاده میکنم، ابتدا همون مسیری که داخلش فایل اصلی وجود داره بررسی میشه برای پیدا کردن myfunction.h و اگه چیزی پیدا نکرد میره تو مسیر system include path دنبالش میگرده (اما اگه از <> استفاده کنم همون ابتدای کار میره تو مسیر system و مسیر فعلی فایل رو بررسی نمیکنه)

مجدد به فایل stdio.h دقت کن! اون h. به چه معنیه؟
فایل‌های h. که بهشون میگن Header File مثل یه دفترچه راهنما یا یه جعبه ابزار هستن که توش فقط تعریف‌ها قرار میگیره. این فایل‌ها خودشون اجرا نمیشن، بلکه به فایل‌های اصلی c. کمک میکنن تا مرتب‌تر و قابل‌مدیریت‌تر باشن. فرضا یه فایل دارم به اسم mymath.h که کد زیر داخلشه:

int add(int a, int b);

این کد میگه: یه تابعی هست به اسم add که دو تا عدد میگیره و یه عدد برمیگردونه.
یه فایل اصلی دارم به اسم main.c که کد زیر داخلشه:

#include <stdio.h> #include "mymath.h" int main() { int result = add(5, 3); printf("Result: %d\n", result); return 0; }

اینجا از اون تابع استفاده کردی. چون تو فایل h. گفتی که این تابع هست، کامپایلر هم مشکلی نداره.


کد رو مجدد مینویسم:

#include <stdio.h> int main() { printf("Hello"); }

تابع main نقطه شروع اجرای برنامست و کدها باید داخل این تابع نوشته بشن. کامپایلر موقع کامپایل دنبال تابع main میگرده و اگه نباشه خطا میده (اسم تابع همیشه باید main باشه)
ساختار این تابع به چه شکله؟ قبل از اسم تابع نوشتم int و یعنی این تابع یه عدد integer برمیگردونه (توی پایتون نیازی نیست نوع بازگشتی تابع رو مشخص کنی اما توی C اجباریه) و معمولا عدد 0 برای نشون دادن اینکه برنامه درست اجرا شده برمیگرده.
توی پرانتزها میتونم پارامترها رو تعیین کنم.
تمام دستورات، داخل بدنه تابع و بین آکولادها قرار میگیره.
(ما میتونیم بیرون از تابع main هم کد بنویسیم که در مقالات بعدی توضیح میدم)

تابع printf مخفف print formatted عه یعنی چاپ کردن با قالب‌بندی. توی کد از این تابع استفاده کردم و گفتم عبارت Hello رو داخل ترمینال بنویس.

هر دستور باید با ; تموم بشه. اگه نباشه، خطا میگیری! همچنین زبان C به حروف بزرگ و کوچیک حساسه.

(میتونم از مواردی مثل n\ یا t\ هم استفاده کنم)

توی زبان C به دو حالت میتونیم کامنت گذاری کنیم. حالت اول:

//printf("I am amirhosein nazouri");

حالت دوم:

/*printf("Hello\nHow are you?"); printf("I am amirhosein nazouri");*/ printf("What's Your name?");

حالت دوم برای کامنت کردن چندین خط استفاده میشه.

برنامه نویسیکامپیوترprogrammingcاینترنت
۰
۰
امیرحسین ناظوری
امیرحسین ناظوری
📕 عاشق یادگیری و به اشتراک‌گذاری دانش -- آیدی من تو شبکه های اجتماعی : mrNazouri13
شاید از این پست‌ها خوشتان بیاید