در جواب قسمت اول: در استاندارد C90
چیزی به نام bool
وجود نداشته و میشده از int
به جای bool
استفاده کرد یا یه enum
تعریف کرد.
در استاندارد C99
نوع _Bool
اضافه شده که با اتصال سرفایل stdbool.h
از bool
استفاده کرد.
اما در C++
نوع دادهی استاندارد و جداگانهای به نام bool
تعریف شده که جزو کلیدواژههای زبان هست. این تفاوت نوع داده بولین در این دو زبان.
برای قسمت دوم یه روشی هست که میشه از یه بیت برای این کار استفاده کرد. استفاده از bitset. اما به هر حال سرعت اجرای برنامه اگه کمتر نشه بیشتر نمیشه.
هیچ پژوهش انسانی نمیتواند ادعای علمی بودن داشته باشد، مگر اینکه از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)