بایگانی‌های دسته‌بندی: زبان سی

اپراتور ~ (Bitwise NOT) در زبان C

اپراتور ~ (Tilde) یا Bitwise NOT یا Bitwise Complement یک اپراتور نقیض یا مکمل یک می‌باشد و این یک اپراتور Unary در زبان سی و سی++ است که وظیفهٔ آن برعکس کردن تمام بیت‌ها است (صفر کردن تمام یک‌ها و یک کردن تمام صفرها). مثلا در یک عدد صحیح ۸ بیتی (مانند دادهٔ char در […]

مکمل یک (One’s Complement) و مکمل دو (Two’s Complement)

مکمل یک و مکمل دو روش‌هایی برای ذخیره و نمایش اعداد صحیح علامت‌دار در کامپیوتر هستند. مکمل ۱ یک عدد دودویی (در مبنای ۲ یا باینری) را می‌توان با صفر کردن تمام یک‌ها و یک کردن تمام صفرها بدست آورد. برای بدست آوردن مکمل ۲ هم باید یک‌ها را به صفر و صفرها را به […]

کتابخانهٔ روشن (roshanlib) نسخهٔ 1.1.2.4

نسخه 1.1.2.4 کتابخانهٔ روشن دارای توابع جدیدی در حوزهٔ ریاضی است. نسخهٔ 1.0.0.0 این کتابخانه را می‌توانید از این لینک دانلود کنید. این کتابخانه نیز مانند نسخهٔ قبل به زبان C نوشته شده و یک کتابخانهٔ Static است. از این کتابخانه در زبان سی و سی++ می‌توان استفاده کرد. مجموعهٔ تمام این توابع را می‌توانید […]

انواع جمع

روش‌های افزایش یک واحدی اعداد صحیح در سی و سی++

به روش‌های مختلفی می‌توان یک واحد به اعداد صحیح اضافه کرد. روشی که از طریق اپراتور NOT بیتی (~) اسفاده شده، روش قابل تأمل‌تری است. در زیر چند روش از آن‌ها آورده شده است:

آموزش Swapping اعداد صحیح بدون تعریف متغیر اضافی در سی، سی++ و پایتون

برای Swapping اطلاعات در زبان سی و سی++ معمولا یک متغیر موقت (temp) تعریف می‌کنند که بتوان اینکار را انجام داد. اما در مورد اعداد صحیح می‌توان اینکار را بدون تعریف متغیر temp انجام داد. در زبان پایتون اینکار بسیار ساده است. ۱. سی و سی++: الف) با تعریف متغیر جدید (temp): ب) بدون تعریف […]

کتابخانهٔ روشن (roshanlib) نسخهٔ 1.0.0.0

این کتابخانه که به زبان C نوشته شده، یک کتابخانهٔ Static است که دارای توابعی جهت تبدیل تاریخ‌های هجری شمسی، هجری قمری، میلادی، عبری و جولین به یکدیگر است. از این کتابخانه در زبان سی و سی++ می‌توان استفاده کرد. مجموعهٔ تمام این توابع درون هدرفایل date_converter.h قابل مشاهده است. بعد از include کردن این […]

نوشتن تابع معکوس‌کننده یک رشته در زبان C

به کد زیر توجه کنید: حلقه‌ی درون این تابع با Swapping باعث برعکس شدن رشته می‌شود. این حلقه حداکثر به‌اندازهٔ نصف طول رشتهٔ ورودی اجرا می‌شود. مقدار بازگشتی هم برابر اشاره‌گر به رشتهٔ هدف است. کد پیچیده‌ای نیست؛ با کمی دقت در آن متوجه همهٔ جزئیات خواهید شد. البته روش‌های دیگری هم برای برعکس کردن […]

ایجاد آرایه‌ای از رشته‌ها در زبان C به روش‌های مختلف

روش بالا، در واقع آرایه‌ای از کاراکترها در آرایه‌ای دیگر از کاراکترهاست. آرایهٔ درونی ۴ عنصر (Element) دارد و آرایهٔ بیرونی ۶ عنصر (Element) دارد. بنابراین متغیر a، مقدار ۲۴ بایت از حافظه را اشغال می‌کند (۲۴ = ۶ × ۴). توجه: در a[0], a[1], a[2], a[3] عنصر چهارم آرایهٔ درونی کاراکتر ‘0\’ می‌باشد.توجه: در […]

حافظهٔ Dynamic در سی و سی++

در زبان سی برای اختصاص حافظهٔ Dynamic باید از چهار تابع malloc, calloc, realloc, free که در کتابخانه string.h قرار دارند، استفاده کرد. سه تابع malloc, calloc, realloc برای اختصاص دادن حافظه استفاده می‌شود و تابع free برای آزاد کردن حافظه‌ای که قبلا اختصاص داده شده بود، استفاده می‌شود. سه تابع malloc, calloc, realloc دارای […]