Using C datatypes with ctypes in python
Question: I tried to use C char pointer datatype in python 3.3. I used following code:

    
    
        from ctypes import *
    
        firstname = c_char_p("I am a noob programmer".encode("utf-8"))
        print(firstname.value)
    

My desired output was

    
    
        I am a noob programmer
    

but what I got was

    
    
        b'I am a noob programmer'
    

I am following a tutorial made for python 2.6. I used "ascii" as the parameter
for encode function. And also tried the "bytes()" instead of encode. But no
difference at either time.Why don't I get my desired output? and How can I get
the output as desired.

Please anybody help me to understand..


Answer: In Python 3 you need to decode it back to `str` if you want it to behave like
`str`.

    
    
    print(firstname.value.decode("utf-8"))
    

