How to save data on microSD?

I have a microSD component: http://www.libelium.com/tienda/catalog/product_info.php?cPath=21&products_id=66, and I installed the Filelogger library: Google Code Archive - Long-term storage for Google Code Project Hosting..

I runner it perfectly with the example included. However,i want to save the result of the measurements from different sensors (for example the inner temperature and the inner voltage). i tried to modify the example and read what other people did with this and other libraries, but i am so lost with the code.

Here is the code that i have now:

#include <FileLogger.h>
#define MEM_PW 8

//  01 Read inner temperature of the Arduino board
long readTemp() {
  long readT;
  // Read temperature sensor against 1.1V reference
  ADMUX = _BV(REFS1) | _BV(REFS0) | _BV(MUX3);
  delay(20); // Wait for Vref to settle
  ADCSRA |= _BV(ADSC); // Convert
  while (bit_is_set(ADCSRA,ADSC));
  readT = ADCL;
  readT |= ADCH<<8;
  readT = (readT - 125) * 1075;
  return readT;
}

//  02 Read inner voltage of the Arduino board
long readVcc() {
  long readV;
  // Read 1.1V reference against AVcc
  ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
  delay(20); // Wait for Vref to settle
  ADCSRA |= _BV(ADSC); // Convert
  while (bit_is_set(ADCSRA,ADSC));
  readV = ADCL;
  readV |= ADCH<<8;
  readV = 1126400L / readV; // Back-calculate AVcc in mV
  return readV;
}

// 03  Procedure to save data into microSD
void write_data(char msg[]){
  unsigned int length = (strlen(msg)+1);
  char buffer[length];
  for(int i=0; i<length;i++)
    buffer[i] = msg[i];
  FileLogger::append("data.log", buffer, length);
}

void setup()
{
  pinMode(MEM_PW, OUTPUT);
  digitalWrite(MEM_PW, HIGH);
  Serial.begin(9600);
  Serial.println("Measurements: ");
  Serial.println();
}
void loop()
{
  Serial.print("Inner temp.: ");
  Serial.print(readTemp(), DEC);
  Serial.println(" x10^-4 degC");
  Serial.print("Inner voltage: ");
  Serial.print(readVcc());
  Serial.println(" millivolts");
  Serial.println();
  char buffer[0]= (readTemp());
  char buffer[1]= (readVcc());
  writedata(buffer);
  delay(5000);
}

You can see that i also show the measurements in the serial, just t be sure that it is running, but in the future, it will only save the data without show the via serial.

and this the error compiling:

 In function 'void write_data(char*)':
error: invalid conversion from 'char*' to 'byte*' In function 'void loop()':

Any idea how could i save the measured data (in this case readTemp and readVcc) in the microSD?

Of course, the card is formatted correctly, and the file data.log already exist and it is not empty. So my problem is that i don´t know so much about the code.

Thanks!