Question: ```
var unique = function(){

var n=0;
return function(){

    return {

        inc : function(){
            n++;
            console.log(n);
        }

    };

 };
};

console.log(unique()().inc());

```

The code above prints 1 and then undefined what is the reason undefined gets printed ?

Answer: 
Objective C has base C primitive data types. There is a little trick you can do. You want to set the keyStroke to a `char`, and then cast it as an `int`. The default conversion in c from a `char` to an `int` is that `char`'s ascii value. Here's a quick example.

`char character= 'a';
NSLog("a = %ld", (int)test);`

console output = `a = 97`
To go the other way around, cast an int as a char;

`int asciiValue= (int)97;
NSLog("97 = %c", (char)asciiValue);`

console output = `97 = a`

Alternatively, you can do a direct conversion within initialization of your int or char and store it in a variable.

`char asciiToCharOf97 = (char)97; //Stores 'a' in asciiToCharOf97`

`int charToAsciiOfA = (int)'a'; //Stores 97 in charToAsciiOfA`
Use `stringWithFormat` call and pass the int values.