print variables to TFT

I would like to print several variables (in an array) to a TFT screen.

I know I can print ONE float to a TFT using something like

char buffer [4];
    dtostrf (batV[thisPin], 4, 3, buffer);

But you can only use the buffer once. Also, it doesnt work if its an int.

How is it done? A char array I guess but how?

Do the variables printed to the TFT have to be strings or can they just be printed in their native form ? I would expect the TFT library to take care of this for you.

you can only use the buffer once.

Why ?

Well if I try to create "buffer2" it doesnt work.
This is inside a for loop, so "buffer" can only be used once per loop
Using it again outside the loop gives gibberish
Im using utft library, eg

myGLCD.print(buffer, Xpos, Ypos, 270);

I came across another thread using myGLCD.printNumF which is fine if its a float. But when it isnt?

This is inside a for loop, so "buffer" can only be used once per loop

Well, you could use an array of buffers but I don't see why you need to. In the for loop put the data into buffer, output it then continue to the next value in the for loop.

Without seeing your code this advice is based on guesswork. Please post a sample program that shows the problem and a link to the library that you are using.

char buffer [4];
    dtostrf (batV[thisPin], 4, 3, buffer);

Three places of decimals, a decimal point and a terminating null in four characters?