۳-۳ خواندن چندین ورودی به صورت همزمان
۲۸ دی ۱۳۹۷۲-۴ آشنایی با ساختارهای تکرار و تصمیم
۲۸ دی ۱۳۹۷در این فصل سعی بر آن است کمی راجع به برنامه نویسی C در میکروکنترلرها صحبت کنیم. بنابراین در اینجا صرفا کار ما بحث در مورد نحوهی برنامهنویسی به زبان C است و وارد مبحث خاصی از میکروکنترلرها نخواهیم شد. همچنین در اینجا فرض بر آن است که شما آشنایی مقدماتی با زبان برنامه نویسی C دارید، بنابراین از وارد شدن به مباحث ابتدایی در این زبان خودداری شده است.
آرایهها و رشتهها در زبان C یکی از مهمترین و پرکاربردترین ساختارهای دادهایی هستند. آرایهها و رشتهها بخشی از حافظه هستند که از اجزای پشت سر هم تشکیل شدهاند. در واقع در تعریف دیگر از آرایهها باید گفت آرایهها گروههای دادههایی هستند که هر عضو با عدد مربوط به خود (Index) شناخته میشود. هر آرایه یک شروع و پایان مشخص دارد. همانند متغیرها، آرایهها باید قبل از اینکه استفاده شوند تعریف شوند.
نوع آرایهها دقیقا به نوع دادههایی که در آن قرار میگیرند بستگی دارد، مثلا اگر یک آرایه قرار است متغیرهایی از نوع float را در خود نگه دارد باید در تعریف خود از نوع float تعریف شود.
آرایهها ساختاری شبیه زیر دارند:
۳ | ۲ | ۱ | ۰ | |
… | عنصر۴ | عنصر۳ | عنصر۲ | عنصر۱ |
در واقع عنصر اول در خانهی صفرم آرایه قرار دارد و به دنبال آن عنصر سوم در خانه چهارم و …
نحوهی تعریف یک آرایه
برای تعریف یک آرایه ابتدا نوع آن و سپس نام آرایه و طول آن به شکل زیر میآید. مثلا اگر بخواهیم یک آرایه به طول ۱۰، متشکل از متغیرهایی از نوع int و با نام array داشته باشیم باید آرایه را به صورت زیر تعریف کنیم:
[php] int array[10]; [/php]
حال ما یک آرایه داریم که از ۱۰ خانهی مجزا تشکیل شده است. به راحتی میتوانیم به هر خانهی آرایه مقدار دلخواه خود را تنها با دادن اندیس (Index) آن خانه بدهیم.
مثلا به مقدار دهی زیر نگاه کنید:
[php] array[5]=4; [/php]
در روش بالا به خانهی ششم از آرایهی array مقدار ۴ داده شد، همچنین میتوان به خانههای یک آرایه به محض تعریف مقداردهی اولیه کرد.
[php] int array[4]={'1','2','3','4'}; [/php]
در مثال بالا یک آرایه با ۴ خانه مجزا تعریف شده که به هر خانهی آن به طور جداگانه مقداردهی شده است. مثلا در تعریف بالا خانهی سوم حاوی مقدار ۴ و خانهی صفرم حاوی مقدار ۱ است. نام هر آرایه نمایندهی خانهی اول هر آرایه است و در اصطلاح برنامهنویسی اشارهگر به خانه اول آرایه است.
نحوهی تعریف یک رشته
برای تعریف یک رشته، همانند آرایه ابتدا نوع آن و سپس نام رشته میآید. از آنجایی که رشتهها آرایههایی از کارکترها هستند نوع آنها از نوع char میباشد. مثلا اگر بخواهیم یک رشته به طول ۵ تعریف کنیم داریم:
[php] char str[5]; [/php]
در بالا در واقع یک رشته تعریف کردیم که از ۵ خانه تشکیل شده است. برای مقداردهی اولیه به یک رشته همانند آرایهها عمل میکنیم.
[php] char str[]={'a','A','&','[php] char str[]={'a','A','&','\0'}; [/php]'}; [/php]
در تعریف بالا یک رشته به طول ۴ تعریف شده است. در خانهی صفرم این رشته کاراکتر a و در خانهی دوم این آرایه کاراکتر & قرار دارد. اما در تعریف هر رشته باید به این نکته توجه داشته باشید که خانهی آخر هر رشته به بایت NULL مقدار دهی میشود. در واقع این کار را بر این میکنیم که همواره به هنگام کار با یک رشته محل تمام شدن آن به طور کامل برای ما مشخص باشد، بدون آنکه حتی از قبل مکان آن را بدانیم.
دقت کنید که در تعریفی مثل تعریف زیر از ۱۰ خانهی رشته تنها ۹ خانه از آن قابلیت مقداردهی دارند و یک خانه از آن که در واقع خانهی آخر آن است به صورت پیشفرض به عنوان NULL در نظر گرفته میشود.
[php] char A[10]; [/php]
همچنین در مقداردهی به رشتهها در هنگام تعریف به صورت زیر نیز میتوان عمل کرد:
[php] char name[]="Milad"; [/php]
1 Comment
خیلی قابل فهم توضیح داده بودین.با تشکر از زحمات شما