pointer adds additional character to char

Hello I just started playing around with Arduino and I am not yet used to the language.
I tried to send some String over Serial and morse it with the Morse library.
But I dont get it to work.
The function morse.sendmsg() needs char* , Serial.read() gives int … the conversion is the problem and adds an unwanted character.
Here the code, input in Serial Monitor is the character a:

#include <Morse.h>
Morse morse(13, 12, 0);
void setup() {
  Serial.begin(9600);
}
void loop() {
  if (Serial.available() > 0) {
  int ascii = Serial.read();
   char letter = ascii;
   char* notonlyonechar = &letter;
   Serial.println(letter);   //Output: a

   Serial.println(notonlyonechar);    //Output: a     Why is this happening?
   morse.sendmsg(notonlyonechar); //compiles, but tries to morse the  after correctly morsing the a
}

Im using Arduino Uno , 0022
on Fedora 12

Thanks!

instead of char * notonlyonechar = &letter; do the following:
char msg[10];
msg[0]=letter;
msg[1]=0;
Then do Serial.println(msg);

For future reading, refer to this article:

http://www.cplusplus.com/doc/tutorial/ntcs/

Observe the importance of zero termination.

It works, thanks!

int ascii = Serial.read();
char letter = ascii;
char msg[10];
msg[0]=letter;
msg[1]=0;
Serial.println(letter);
Serial.println(msg);
 morse.sendmsg(msg);