bC & C++

  1.  Basics:
    1. what is a pointer? Show an example of how to create & use a pointer.
    2. Explain What is "namespace", "class", and "object". And show the relationship between them.
    3. Explain the concept of "private",  “public”, and “protected”.
    4. What is "function"? Show an example of how to create a function.
    5. What is "struct"? Show an example of how to create a struct and use its instance.
    6. Explain type "uint16_t", "uint32_t", "int16_t", "int32_t". Why do they have a number in their name? What is the meaning of "n" at the beginning of "uint"? What is the meaning of "_t"?
    7. Explain how a number is stored in the variable of the above types.
    8. What is the meaning of "__packed"? Explain its advantages and disadvantages.
    9. Explain "Bit" & "Byte", and show the relationship.
    10. Explain the transfer between Hex, Dec and Bin. Is there quick calculation skill for oral arithmetic?
    11. What are the differences between "float" & "double" types?
    12. Explain how a number is stored in the variable of the above types. Are there any problems?
  2. Multithreading:
    1. What is multithreading?
    2. How to transfer values/massages between threads? 
    3. What is thread-safe? How to make sure to keep-thread safe?
    4. Explain "thread", and "process". Show the relationship and differences.
    5. What is the "priority" of the thread? Explain Priority inversion and how to deal with that?
  3. Practice:
    1. A student has the following attribute: grade(may have decimal point). name, age. Write a function of Bubble Sort, to sort 10 students' grades, using a pointer as input. You can create data by yourself.