AFunc changes what was sent to it, and the printf() outputs the changes:
void AFunc ( char *myStr, int *myNum )
{
*myStr = 's';
*myNum = 9;
}
int main ( int argc, char *argv[] )
{
char someString = 'm';
int n = 6;
AFunc(&someString, &n);
printf("%c" "%d", someString, n);
}
But what if the string was more than one char? How would the code look differently? Thanks for any help.
If it were a “string” instead of a char, you would do something like this:
which outputs:
A “string” in C is really an array of characters terminated by the
\0(NUL) character.What the above code does is to pass in the address of the first character in that array and the function populates the four characters starting from there.