هنگامی که قرار است دو عبارت را با عملگر تساوی(==) مقایسه کنید، عادت خوب این است که همیشه سمت چپ را عبارتی قرار دهید که ثابت است: این عادت ساده اما اثر بخش میتواند مانع از ایجاد باگ در اثر عدم تایپ یکی از مساویها شود. اگر شما به دلیل اشتباه تایپی در برنامه کد زیر را بنویسید: کامپایلر به …
مشاهده بیشتر »کد باکیفیت
سالها پیش در پروژهای قرار بر این شد که با ترکیب دو محصول مختلف و قدیمی شرکت، به محصولی جدید برسیم. از ابتدا، طراحی سختافزار این دو دستگاه با رویکرد پلتفرمی مشترک برای چند محصول صورت گرفته بود. دستگاه جدید هم قرار بود بر روی این پلتفرم تولید شود. ظاهراً کار ساده بود! من فقط باید به کدهای هر دو …
مشاهده بیشتر »توابع const در ++C
اگر با کلمه کلیدی const در زبان C آشنا باشید، احتمالا شنیدن توابع const کمی برایتان عجیب خواهد بود. چراکه یک تابع مثل متغیر قرار نیست در حین برنامه تغییر کند. در ادامه به این میپردازیم که const function چیست و چه کاربردی دارد؟
مشاهده بیشتر »تفاوت new / delete با malloc / free
اگر با زبان C کار کرده باشید احتمالا با کلیدواژههای malloc و free که برای گرفتن و آزاد کردن حافظه از Heap هستند آشنا هستید. از طرفی ممکن است شنیده باشید که معادل اینها در C++ کلید واژههای new و delete هستند. اما این به این معنی نیست که در کامپایلر C++ نمیتوانیم از malloc / free استفاده کنیم. پس …
مشاهده بیشتر »مشاهده دستورات git diff به صورت گرافیکی
از جمله ویژگیهای فوقالعاده گیت، امکان مشاهده تغییرات است. ما این امکان را داریم تا بتونیم تغییرات یک branch را با branch دیگه و یا حتی یک commit را با commit دیگر مشاهده کنیم. به طور کلی همهی اینها با مجموعه دستور git diff امکان پذیر است. اما چیزی که احتمالا مطلوب شما هم نباشد، دیدن این تغییرات در محیط ترمینال است. خوشبختانه برای این مشکل راه حل وجود دارد و با اتصال یک نرمافزار گرافیکی دیگر به git، میتوان در وضعیت خواناتری به بررسی این تغییرات پرداخت. در ادامه به بررسی نحوه نصب و راه اندازی یکی از این نرم افزارها به نام Meld خواهیم پرداخت.
مشاهده بیشتر »مرتب کردن اعداد در برنامه نویسی میکروکنترلر با الگوریتم shell sort
این بحث شاید خیلی عمومیت نداشته باشد. واسه همین، تعجب نمیکنم که بگویید: “آخه کی در برنامه نویسی میکروکنترلر نیاز به این کار داره؟!” اما اگر به هر دلیلی به دنبال راهکاری برای مرتب یا sort کردن تعداد زیادی از اعداد در برنامه میکروکنترلر خود میگردید، شاید shell sort همان چیزی باشد که به دنبالش هستید. این پست حاصل تحقیقات …
مشاهده بیشتر »نکات برنامه نویسی با زبان C : معرفی
معرفی سری پستهای “نکات برنامه نویسی با زبان C” : در این سری پستها قصد دارم نکاتی که طی این سالها برنامه نویسی با زبان C یادگرفتهام یا با تجربه به دست آوردهام را با شما به اشتراک بگذارم. این نکات شاید کوچک به نظر بیایند، اما به دست آوردن بعضی از آنها با تحمل صبر زیاد به دست آمده …
مشاهده بیشتر »
دیجیلاگیست محلی برای کسانی که به دنیای دیجیتال و آنالوگ علاقه دارند