@nprofile1q... why would you want to "display" a boolean? they're not for that, for displaying you have String and &str. ofc boolean can be converted to a string like "true" or "false" but why
also in C you don't even have booleans, only ints - 0 is false, everything else is true
you use booleans only in if else checks, you don't display them directly to the user but do `println!("the setting is {}.", if is_enabled {"enabled"} else {"disabled"});`. and when you need user to input a boolean you ask yes/no question or put a switch
you don't "display values as hex or bit-by-bit" if they're not some special values in some special cases where that makes sense, like binary hex viewer or something. rust provides abstractions so you interact with more human-readable and maintainable data structures, and look after how and where your memory is stored, not how this memory looks like, and it guarantees that you interact safely with the memory. c however doesnt care: if you want to go to bit 87 and turn it from 0 to 1, you have all means to do that. and it has minimal abstractions, you're basically writing more readable and maintainable assembler code. the power of rust is that it takes high-level syntax like in java and turns it into machine code, with much more easy and pleasant developer experience than in c, where you are counting bytes and getting segfaults or silent runtime misbehaviors
use c if you want full control over metory and data, if you need to manage when memory is allocated and deallocated manually, if you need direct memory access. use rust if you want to write maintainable memory-safe application with zero-cost abstractions and modern tooling, more readable code and compiler errors, if you're not sure you will be able to handle memory securely yourself
*strugles between removing everything written and forgetting, and sending the wall of text because to many words were written to delete*