There’s a level of style when it comes to the placement of *, in declarations. However, for the
sake of simplicity, just use char *name1, *name2 for consistency’s sake.
In a declaration, an asterisk declares a pointer, and then later when you’re using that declared
variable, you’d use *name to dereference the pointer and attain the actual value.
char-
A single character. C doesn’t actually have a
stringtype. Instead, to create a string, you would usechar *name; achar *namecreates a series of characters in memory.-
When using with with something like
fprintf(), you actually just pass the non-dereferenced variable;fprintf(stderr, "%s\n", usage)will work fine, asfprintf()expects achar*.
-