Some thoughts about C and D, return data through parameters
Petar
Petar
Tue Dec 19 09:16:46 UTC 2017
On Tuesday, 19 December 2017 at 01:01:57 UTC, cosinus wrote:
> [snip]
>
> A second thought that came up was:
> Shouldn't there be a compiler-error if someone is ignoring the
> return-value of a function?
>
> I saw this C-code:
>
> ```C
> (void)printf("Hello World!");
> ```
>
> It cast's the return-value to void to tell the compiler and
> other programmer's that the return-value can be ignored.
Ignoring the return value is mainly useful when the primary use
of the function are it's side effects, not it's return value. In
many languages derived from C, people prefer using 'void' return
types + exceptions for error handling.
It is an error to ignore the result of function with no side
effects (D models such functions with the 'pure' attribute):
https://dlang.org/spec/function.html#pure-functions
More information about the Digitalmars-d
mailing list