They will all be on the stack. aand the bparameters are passed, so even if the originals are on the heap, a copy will be made on the stack. If you followed the link, this may be another matter, since the thing actually sent ("under the hood") is more likely to be a pointer to the original.
For c, since this is a local variable, it is also on the stack.
, , . .