Deep Learning C language knowledge point checklist

Source: Internet
Author: User
Tags define function

String
Study time: 1.5 W ("W" week, the same below)
Knowledge point checklist
What type of return value is the strlen () function?
Is the value of strlen () the same as the memory occupied by strlen?
Do you know the potential risks of strcpy functions? How to avoid it?
If a string does not have a string Terminator and the database function starting with STR is called, what will happen?
How does strcpy (), strcat (), strcmp (), strncpy (), strncat (), and strncmp () Run internally? What have these functions done to the source string and target string? Have you ever observed the changes in the memory of the two strings when they are running?
When using these functions, what do you need to pay attention?
How many string search operations do you perform?
Does the C language contain the string data type?
During string operations, is the storage location reserved for the string Terminator? Otherwise, the memory is easily accessed.

Array
Study time: 2 W
Knowledge point checklist
You must know that the element "int A [10];", a [10] is invalid.
How many array initialization methods do you know?
Arrays and pointers are closely related and different. Have you summarized their usage in different situations?
"Int calendar [10] [20];", what kind of array is this? Does it have 10 array elements or 20?
"Int A [10];", what is array name a essentially? Have you printed the value of?
Do you know several ways to get an element of an array?
Are pointers and arrays the same? When is the same? When is it different?
Which method is faster to access array elements with pointers and subscripts?

Struct
Study time: 1 W
Knowledge point checklist
Do you know what a bitfield struct is? How to define it? How to use it?
Do you know the effect of byte alignment on the memory space occupied by the struct? How to calculate the memory occupied by the struct?

Macro
Study time: 1 W
Knowledge point checklist
Do you know the essence of Macros? Function? Statement? Type Definition? Or something else?
Do you know why Language designers design macros? Are these reasons still true?
Will you design macros with parameters?
Do you know the precautions when using macro parameters?
Will you design macros with variable parameters?
Do you know the disadvantages of using macros?
Do you have a better alternative?

Enumeration
Study time: 0.5 W
Knowledge point checklist
Can I specify the values of each item in the enumeration?
If no value is specified, what is the first value of enumeration?
Can the enumerated value be negative?
When defining enumeration, do you specifically define the minimum and maximum values of enumeration?

Switch
Study time: 0.5 W
Knowledge point checklist
Which Data Types of C in switch (c?
Do you add the default statement to all switches?
Is the break statement added in all cases (General Practice )? What will happen if you do not add a break?

Static
Study time: 1 W
Knowledge point checklist
What are the three main functions of static?
Where are static modified local variables stored? Where are global variables?
Can global variables and functions modified by static be accessed in other files? How to access it?
Do you know that static is a powerful tool for encapsulation and hiding in C language? Do you often use it?
Defines static global variables in different source files. Does the compiler allow them to have the same variable names? Are their addresses in the memory the same? Function?

Const
Study time: 1 W
Knowledge point checklist
Do you often use const to indicate variables that cannot be changed?
Do you often use const constants instead of Macros?
In the following four cases, do you know what each means?
Int I _value = 10;
Const int * pvalue = & I _value
Int const * pvalue = & I _valueint * const pvalue = & I _value
Const int * const pvalue = & I _value
Do you know how to initialize const constants?

Sizeof
Study time: 1 W
Knowledge point checklist
For character arrays, are the strlen and sizeof values the same?
Is sizeof essentially a function or a macro?
What type is the return value of sizeof?

Pointer
Study time: 3 W
Knowledge point checklist
"Int * P;" & P, P, * P What do their values mean?
Is the pointer you defined initialized?
Do you understand the concept of pointer? Will you use it?
"Int * pi_value; pi_value = 0x100000;" What is the value of pi_value + 1?
Will you define function pointers?
Will you use the function pointer to call a function?
For pointers and arrays, see knowledge point array.

Dynamic Memory Allocation
Study time: 1 W
Knowledge point checklist
Where is the dynamically allocated memory saved?
Under what circumstances should I use dynamic memory allocation?
Dynamic Application of memory must be released; otherwise, memory leakage may occur. Have you used a memory detection tool?

Function
Study time: 1 W
Knowledge point checklist
How can I view the address of a function in memory?
How to assign a value to a function pointer?
Will you define a variable input parameter function?
Can you differentiate the form of a function from the real parameter?
How can I define a function name to accurately express the purpose of a function?
Do you use const to modify the input parameters and return values of a function, with the specific meaning of the table?
How to use recursion?

Variable
Study time: 1 W
Knowledge point checklist
Where are global variables, local variables, and constants stored in the memory?
Do you know the scope of variables of different types?
Can global variables and local variables be duplicated? Are you doing this?
Is the local variable valid after the function exits? Why?
Why cannot global variables be defined in header files? What are the dangers?

Link (Linux)
Study time: 1 W
Knowledge point checklist
Which stage of the compilation process is the link?
What are the differences between dynamic and static link libraries?
How to dynamically load the dynamic link library (without restarting the program )?
What are the advantages of dynamic links?
Does the dynamic link library define non-static global variables? Do you know this is a very dangerous action?
Can the global variables (non-static) and functions (non-static) in the dynamic library be the same as the upper-layer global variables and functions? What will happen after a duplicate name?

Data structure during running (Linux)
Study time: 1 W
Knowledge point checklist
Do you know the concept of segments?
How many executable programs can be divided? What is stored in each segment?
How can I view the size of each segment of the executable program?
What happens when a function is called?
Have you ever tried how big the stack space of a program is? What happens if the program exceeds this size?
Does the stack of the system you use grow down or up?

Include
Study time: 0.5 W
Knowledge point checklist
1. How to Avoid Multiple include operations on the same header file?

Statement
Study time: 1 W
Knowledge point checklist
What is Declaration and definition?
Will you use the priority rules declared in C language?

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.