Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »

Welcome to Software Development on Codidact!

Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.

Activity for Lundin‭

Type On... Excerpt Status Date
Comment Post #278172 @Estela The terms operator precedence, associativity and order of evaluation ("sequenced before"/"sequenced after") are the same in C++. The only difference is that in later versions, C++17 and beyond has added well-defined order of evaluation for certain specific operators such as `=`.
(more)
over 3 years ago
Comment Post #280640 @jrh `uint8_t` will have to be a character type if supported, I've written answers explaining why on SO. But please don't derail comments further; this has nothing to do with endianess. If you have a question about strict aliasing, please ask a separate question.
(more)
over 3 years ago
Comment Post #280640 @Chris Jester-Young‭ Furthermore, if you read the actual "strict aliasing rule", it has an explicit exception for lvalue access through a character type. C17 6.5/7: "An object shall have its stored value accessed only by an lvalue expression that has one of the following types: ... - a character typ...
(more)
over 3 years ago
Comment Post #280640 @Chris Jester-Young‭ No, that's wrong. There is a special rule allowing us to inspect any type in C by using a character type (uint8_t is always a character type if supported). C17 6.3.2.3/7. "When a pointer to an object is converted to a pointer to a character type, the result points to the lowest ...
(more)
over 3 years ago
Edit Post #280640 Post edited:
over 3 years ago
Edit Post #280640 Post edited:
over 3 years ago
Edit Post #280641 Initial revision over 3 years ago
Answer A: What is CPU endianness?
This goes back to the various CPU architecture "wars" in the 1970s-1980s between the competitors Intel and Motorola (for example Intel 8086 vs Motorola 68000). For various reasons, CPUs from these two manufacturers ended up with different byte ordering in relation to each other. Byte ordering referri...
(more)
over 3 years ago
Edit Post #280640 Initial revision over 3 years ago
Question What is CPU endianness?
I was fooling around with the following C code on my trusty old x86 PC: ```c #include #include int main (void) { uint32t u32 = 0xAABBCCDD; uint8t ptr = (uint8t)&u32; for(sizet i=0; i<sizeof(uint32t); i++) { printf("%.2X", ptr[i]); } } ``` To my surprise, this print...
(more)
over 3 years ago
Edit Post #278172 Post edited:
Formatting
over 3 years ago
Comment Post #280536 @dmckee‭ Yeah it sucks that various compilers decide to whine about that. It's like they never understood what #pragma is supposed to do in the first place.
(more)
over 3 years ago
Comment Post #280529 This new comment system sounds very promising overall - threaded comments would also be awesome too!
(more)
over 3 years ago
Comment Post #280536 Well, even in old school C you can simply use `#pragma` without any surrounding #ifdef. Compilers are supposed to simply ignore unknown pragmas and not whine about "unknown pragma".
(more)
over 3 years ago
Comment Post #280528 @dmckee Nan is going to be a special case no matter what you do.
(more)
over 3 years ago
Comment Post #280528 Compiler warnings are... compiler-specific :) You should probably manage these through different builds per compiler, if possible, keeping everything in IDE project settings or make files. Asserts in particular should be handled with debug vs release builds. As for exact floating point comparison, co...
(more)
over 3 years ago
Comment Post #280514 I would hope this gets implemented too. Couldn't find any feature request about it on meta.codidact though.
(more)
over 3 years ago
Comment Post #280449 It would probably be easier to generate a S-record or Intel hex file (text file formats). Then just search for the highest address, add this address to the size of the data stored at that address, then subtract the offset for where the flash starts from there.
(more)
over 3 years ago
Comment Post #280380 The terms "fullstack", "back end" and "front end" are only used in certain areas of programming. I think the terms are most commonly used in GUI and/or web applications(?). If you ask me, a "full stack" either means that the stack is full because you pushed too much onto it, or it means that you boug...
(more)
over 3 years ago
Comment Post #279895 The question was why to pick `do { } while(0)` over `{ }`. Your examples work just as fine with `{ }`.
(more)
over 3 years ago
Comment Post #279853 @Alexei It would be a perfectly fine use of meta to ask for feedback about a question draft before posting it live though.
(more)
over 3 years ago
Comment Post #279853 We actually discussed this very early on [here](https://forum.codidact.org/t/communities-dedicated-sites-for-professionals/320) (on the old forums, now closed). This was long before categories were invented though.
(more)
over 3 years ago
Comment Post #279853 As for having a separate newcomer site/category, it has been proposed many times before. I think it is easier to migrate the advanced topic to a separate site/category though. So for this specific site, it would mean that main Q&A should be the newbie friendly one, and we could add an "Expert" catego...
(more)
over 3 years ago
Comment Post #279853 The tabs = what's called categories on Codidact.
(more)
over 3 years ago
Comment Post #279772 Sounds like you can perhaps use some modified version of Prim's algorithm for the most efficient way to connect all nodes to a graph. Or some other manner of "greedy algorithm".
(more)
over 3 years ago
Comment Post #279081 @Martin Bonner As for Rasp Pi, it is a PC toy, not an embedded system. Using it for mission-critical embedded systems is probably criminal. Kind of the same situation as using some "lets play doctor" kit for kids in real medical surgery.
(more)
over 3 years ago
Comment Post #279081 @Martin Bonner MISRA-C covers array out of bounds access, see [Does MISRA check if array index out of bounds?](https://stackoverflow.com/questions/64800766/does-misra-check-if-array-index-out-of-bounds). A buffer overrun is a broader meaning though, it happens on the top application layer, such as sa...
(more)
over 3 years ago
Comment Post #278907 As for safety standards, the good ones focus on "what should we do when this error occurs" rather than "error must not happen". Of course you should prevent errors from happening, but you also need to have a plan of what to do when they happen anyway. This is where defensive programming saves the day...
(more)
over 3 years ago
Comment Post #278907 @Canina Yeah well, mainly "anecdotal" was a just a poor wording, "empirical evidence" is another thing entirely. That is, "I heard it from a guy on the internet" vs "I made field population studies of x cases".
(more)
over 3 years ago
Answer A: What is do { } while(0) in macros and should we use it?
The sole purpose of the `do { } while(0)` is to write macros that accommodates to all manner of diverse coding styles. It is quite common not to use braces after `if` statements, so this is a common coding style: if(bad) HCF(0xDEADBEEF); else printf("good"); If we only us...
(more)
over 3 years ago
Question What is do { } while(0) in macros and should we use it?
Background I can see the need to use `{ }` when implementing a function-like macro such as this one: #define HCF(code) fprintf(stderr, "halt and catch fire"); exit(code); Because if we use the following calling code bool bad = false; if(bad) HCF(0xDEADBEEF); print...
(more)
over 3 years ago
Edit Post #279291 Post edited:
over 3 years ago
Comment Post #279291 Disclaimer: I'm not a C++ guru and various subtle crap changed from C++11 and beyond. I _think_ I got the C++11 standard right and also that this part holds true for any version >= C++11.
(more)
over 3 years ago
Edit Post #279291 Initial revision over 3 years ago
Answer A: Static and thread_local initialization order
TL;DR The initialization of the variables `a` and `b` in your question are indeterminately sequenced in relation to each other. The initialization order is not guaranteed between them. The initialization rules of C++ are quite complex, especially past C++11. The relevant part would be C++11...
(more)
over 3 years ago
Edit Post #279081 Post edited:
over 3 years ago
Edit Post #279081 Initial revision over 3 years ago
Answer A: Is MISRA-C useful outside safety-critical and embedded programming?
It is true that MISRA-C has a heavy focus on embedded system, though it has become somewhat more generic over time. The MISRA guidelines have been changed and improved several times over the years (in 1998, 2004 and 2012 + numerous TC and addendum/amendments). They are now definitely general enough t...
(more)
over 3 years ago
Edit Post #279077 Initial revision over 3 years ago
Question Is MISRA-C useful outside safety-critical and embedded programming?
When discussing best or safest C programming practices with various C gurus on the Internet, the "MISRA-C guidelines for the use of C language in critical systems" often pops up as a source. This standard was invented by the automotive industry and is pretty much mandatory in all automotive firmw...
(more)
over 3 years ago
Edit Post #278983 Post edited:
Don't use company name tags.
over 3 years ago
Edit Post #279031 Initial revision over 3 years ago
Answer A: Do we really need the [tools] tag?
No, it's not helpful, it's far too broad and doesn't make sense to use in combination with any other tag either. It can't be used for searching or categorizing questions either.
(more)
over 3 years ago
Comment Post #279013 Is STL a thing in C++ still though? Has it not been swallowed up by the "standard library" just like everything else? Why do we need a tag for it to begin with?
(more)
over 3 years ago
Comment Post #278985 I wonder what's the rationale behind any of it. What if I have a question about the MySQL dbms specifically, which is not related to SQL language at all? Does this mean that the site will force me to add the extra unrelated SQL tag?
(more)
over 3 years ago
Comment Post #278978 This might be of interest: https://stackoverflow.com/questions/8295131/best-practices-for-sql-varchar-column-length
(more)
over 3 years ago
Comment Post #278303 @laserkittens Those are borderline on-topic. An excel formula is (arguably) a very limited form of programming. If you think they should be off-topic, you could propose it [here](https://software.codidact.com/questions/278648). However, it has been suggested to either migrate them to either a "Power ...
(more)
over 3 years ago
Edit Post #278932 Post edited:
over 3 years ago
Comment Post #278952 On SE, unusued tags deleted themselves fairly quick, I think within 24 hours?
(more)
over 3 years ago
Comment Post #278924 Besides, lets say you drop templates and overload int + float functions only. You will most likely need to write the implementation of those functions differently, because these types are compared & promoted differently.
(more)
over 3 years ago