[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 158
  • Last Modified:

Simple C Help

I have the following program:

#include <stdio.h>

char name[]   = "Mr J Smith";
int stnum     = 345;
char stname[] = "Main";
char town[]   = "Palmerston North";

int main(void)
{
  printAddress();
  return 0;
}

void printAddress(void)
{
  printf(name, stnum, stname, town);
}

I'm trying to get the following output:

Mr J Smith,
345 Main Street,
Palmerston North

I've tried:
printf(name",\n", stnum, stname" Street,\n", town);
but it won't work.
0
lhutton
Asked:
lhutton
1 Solution
 
imladrisCommented:
printf requires a format string as the first argument with which to interpret the subsequent variables:

printf("%s\n%s %s Street\n%s\n",name,stnum,stname,town);

This should do the trick. The "%s" means assume the next variable is a string and print it like that. There is also "%d" (next variable is an int), "%ld" (next variable is a long int) "%f" (next variable is a float) etc. etc.
0
 
lhuttonAuthor Commented:
Thanks!
0

Featured Post

Identify and Prevent Potential Cyber-threats

Become the white hat who helps safeguard our interconnected world. Transform your career future by earning your MS in Cybersecurity. WGU’s MSCSIA degree program was designed in collaboration with national intelligence organizations and IT industry leaders.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now