***The Freedom***

با سلام
من پویا جهانیار مدیر وبلاگ و طرافدار آزادی به خصوص نرم افزار آزاد هستم.
در این وبلاگ به مطالبی مانند لینوکس,برنامه نویسی,هک و امنیت,آزادی و... خواهم پرداخت.

طبقه بندی موضوعی
آخرین مطالب

۲ مطلب با موضوع «Unix & C» ثبت شده است

در این مطلب به آموزش مقدمات زبان C و Bash خواهیم پرداخت.


ساختار یک فایل C:

#include <HEADER_NAME1>                                                                              
#include <HEADER_NAME2>
.
.
.
#include <HEADER_NAMEn>
 
TYPE main( ARGUMENTS ){
CODES
}

یک برنامه C دارای بخش های زیر میباشد:

۱-هدرها(سرفایل ها)(البته در صورت نیاز)

۲-تابع main که هر نوعی میتواند داشته باشد(برخلاف C++).(در مورد انواع در آینده بحث خواهد شد)

۳-کد های داخل تابع اصلی.


هدر ها:هدر ها فایل هایی هستند که حاوی توابع میباشد.(مانند تابع printf() که برای چاپ داده های مختلف بکار میرود.)

تابع main:همانطور که از نامش پیداست این تابع تابع اصلی فایل های C میباشد که کد های اصلی در داخل این تابع نوشته میشوند و بدون وجود این تابع کامپایل فایل C با ارور مواجه خواهد شد.


مثال:برنامه ی چاپ Hello, World!:

#include <stdio.h>                                                                                

int main(){

printf("Hello, World!");

return 1;

}

در خط اول سرفایل stdio.h را به برنامه وارد کردیم که اکثرا دارای توابع IO (ورودی/خروجی) است.

در خط دوم تابع main را از نوع (int) میباشد تعریف کردیم.(اگر تابع از نوع int باشد یعنی برنامه باید در آخر عدد صحیحی را به سیستم عامل برگرداند تا سیستم عامل از اتمام برنامه مطلع شود.و همانطور که میبینید در خط چهارم با استفاده از کلمه کلیدی return عدد صحیح ۱ را برنامه به سیستم عامل باز میگرداند.)

در خط سوم با استفاده از تابع printf داده ی رشته ای Hello, World! را به خروجی برده ایم(یعنی در صفحه ی نمایش چاپ کرده ایم.)

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

قبل از مشاهده کردن نتیجه باید برنامه را Compile کنیم.یعنی فایل c را با استفاده از یک Compiler به فایل اجرایی تبدیل کنیم تا نتیجه را مشاهده کنیم.

Compiler به صورت پیشفرض در اکثر سیستم های یونیکسی نصب شده است.

من کد های چاپ Hello, World! را در یک فایل به نام hello.c در دسکتاپ ذخیره کرده ام.

ابتدا ترمینال را باز کنید و باید با استفاده از ترمینال به صفحه ی دسکتاپ بروید.(چون hello.c در دسکتاپ ذخیره شده است) برای رفتن به دسکتاپ با استفاده از ترمینال از این فرمان استفاده میکنیم:

root@jahanyar:~# cd /Desktop                                                                     

حالا نوبه ی کامپیال فایل رسیده است!

برای کامپایل از این فرمان استفاده میکنیم:

root@jahanyar:~# gcc hello.c -o hello                                                             

gcc نام برنامه کامپایلر است که در سیستم عامل های یونیکسی به صورت پیشفرض نصب شده است.

hello.c نام فایلی است که میخواهیم آنرا کامپایل کنیم.

-o نام و محل ذخیره ی فایل اجرایی را مشخص میکند.

hello نام فایل اجرایی است(هر نامی که دوست دارید میتوانید بگذارید.)

برای اجرای فایل hello از فرمان زیر استفاده میکنیم:

root@jahanyar:~# ./hello                                                                          

و شما نتیجه زیر را خواهید دید:

Hello, World!                                                                                     

نکته:دستورات C به ; ختم میشوند.


حال برویم سراغ Bash!


بیایید برنامه چاپ Hello, World! را در بش باز نویسی کنیم!

برای اینکار میتوانید مستقیما از خط فرمان اینکار را بکنید و یا کد هارا در داخل یک فایل sh بنویسید.که من هردو روش را خدمتتان عرض میکنم!

خط فرمان:کافیست از فرمان echo استفاده نمایید!

root@jahanyar:~# echo "hello world"                                                               
hello world

نوشتن در فایل:

ابتدا یک فایل بسازید.(اسم فایل من hello.sh است و در دسکتاپ ذخیره گردیده است.)

فایل را باز کنید و کد های زیر را بنویسید:

#!/bin/bash                                                                                       
echo "hello world"

توضیحات:

خط اول:هر برنامه بش با این کد شروع میشود.

خط دوم:که با استفاده از فرمان echo پیامی را به خروجی میبریم!


فایل را ذخیره کنید و خارج شوید.


ترمینال را باز کنید با فرمان cd /Desktop  به دسکتاپ بروید.(چون فایل hello.sh در دسکتاپ قرار دارد.)

برای اینکه فایل hello.sh حالت اجرایی بگیرد فرمان زیر را وارد کنید:

root@jahanyar:~# chmod +x hello.sh                                                               

و با این فرمان فایل را اجرا کرده و نتیجه را ببینید:

root@jahanyar:~# bash hello.sh                                                                    
hello world

و در نهایت به پایان این قسمت رسیدیم!

در قسمت بعدی به مطالب جالب تری خواهیم پرداخت!

۰ نظر موافقین ۰ مخالفین ۰ ۰۱ مهر ۹۵ ، ۱۴:۴۳
پویا جهانیار


با سلام خدمت دوستان عزیز.

بنده تصمیم گرفته ام از این پس به آموزش برنامه نویسی C و یونیکس(ابیشتر Linux) خواهم پرداخت.


یونیکس چیست؟


یونیکس یک سیستم عامل است که در سال ۱۹۶۹ توسط کارمندان آزمایشگاه بل (دنیس ریچی,برایان کرینگان و...) ساخته شد.این زبان در ابتدا به زبان اسمبلی نوشته شد ولی بعد ها به خاطر تلاش های فراوان دنیس ریچی در طراحی زبان برنامه نویسی C این سیستم عامل با زبان برنامه نویسی سی بازنویسی شد.بعضی از شرکت ها (حتی مایکروسافت) نسخه های مخصوصی از یونیکس را برای خود دارند.شاید جالب باشد بدانید که سیستم عامل یونیکس آغازگر دنیای اینترنت و اطلاعات است.از آن جالب تر اینکه واژه ی اینترنت را کاربران یونیکس به وجود آورده اند.


زبان C چیست؟


یک زبان برنامه نویسی روندگرا میباشد که برای اینکه یونیکس به زبان اسمبلی توسعه داده نشود توسط دنیس ریچی در آزمایشگاه بل پیاده سازی شد..با وجود قدیمی بودن این زبان اکثر برنامه های مهم و سیستم عامل ها به زبان سی نوشته و توسعه داده میشوند و بی شک میتوان گفت زبان سی مهمترین نقش را در پیشرفت تکنولوژی ( از همه جهت) داشته است.


۰ نظر موافقین ۰ مخالفین ۰ ۲۸ شهریور ۹۵ ، ۲۲:۱۴
پویا جهانیار