Path: ...!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.c Subject: Re: Top 10 most common hard skills listed on resumes... Date: Sun, 08 Sep 2024 18:10:39 -0700 Organization: None to speak of Lines: 27 Message-ID: <878qw13a40.fsf@nosuchdomain.example.com> References: <87v7zjuyd8.fsf@bsb.me.uk> <20240829084851.962@kylheku.com> <87mskvuxe9.fsf@bsb.me.uk> MIME-Version: 1.0 Content-Type: text/plain Injection-Date: Mon, 09 Sep 2024 03:10:40 +0200 (CEST) Injection-Info: dont-email.me; posting-host="5130c977fa34ae7ba7f2b29594baf74a"; logging-data="2245032"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18xKsYN7NPj/tmbjFoykCgD" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:kkyAVnELzCxjMUSkwl65JtdflOk= sha1:OSdJoCJkGHifKKk9dTb6trW9hrI= Bytes: 2321 Waldek Hebisch writes: > Bart wrote: [...] >> I had a problem with this code because it was so verbose. The first >> thing I did was to define aliases u64 and u32 for those long types: >> >> typedef unsigned long long u64; >> typedef unsigned long u32; > > This code runs in 33 bit i386, 32 bit ARM and 64 bit x86-64, in > all cases under Linux. As Keith noticed, most popular of those > has 64-bit long. So your definition would break it. You need > > typedef unsigned int u32; Just add #include and use uint32_t -- or, if you value brevity for some reason: typedef uint32_t u32; (Bart dislikes , but there's no reason you should.) [...] -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com void Void(void) { Void(); } /* The recursive call of the void */