Sending and Receiving Multiple Variables from a Function

The advantage of returning a struct is that a struct is a logical entity. A better example would be a function returning a point = struct { int x; int y; }

If so I can use a void function, but the variables will be changed anyway?

yes, it is named - call by reference

Well you can always declare some variables global and then they can be read or written to anywhere in the program.

And this is by far the fastest way!