Home  >  Article  >  Backend Development  >  What do you need to learn to learn C language well?

What do you need to learn to learn C language well?

little bottle
little bottleOriginal
2019-05-16 10:03:3618393browse

C language is a general computer programming language with a wide range of applications. Some people ask how to learn C language and what do you need to learn well? First of all, the editor wants to say something. It may not be easy for computer novices to get started with C language. Please join me to learn about C language and see what parts you need to learn well.

What do you need to learn to learn C language well?

First of all, you need a week to master the most basic content:

1. Commonly used basic data types (int, float , double, char) must include commonly used input and output functions.

2. Learn the three major structures of programs: sequential structure, selection structure, and loop structure.

3. Understand the functions of modular programming.

Then spend another week learning more: pointers, structures, and files.

At this time, some people may write in their resume that they are "proficient" in C language.

But you have to know that if you simply learn to this level, you will often encounter setbacks in actual programming, mainly due to insufficient understanding, but just a taste of C language syntax.

You need to first master the basic content of C language, including basic data types, three major structures, modular design functions, pointers, structures, and file operations in C language. During the learning process, you must practice good programming habits, learn C language ideas, and its standard library. If you want to learn more, you can also learn about Linux programming and so on.

Below I will list some common problems for novices:

I don’t understand the modular design of C language, and the concepts of variable names and pointers are vague.

After changing the compiler, the program produced strange results.

What is the best way to define and declare C language global variables and functions?

In C language, can't a structure contain a pointer to itself?

What is the best code layout style in C language?

Why can't I pass char ** to a function that accepts const char **?

Is it reliable to use the abbreviation "if(p)" to check the null pointer?

char *The pointer points to some int variables, how to skip it?

How to create and understand very complex statements?

Haha, after asking, do you feel like you can’t do anything anymore? Don't panic, keep reading.

The value of a programmer with a certain skill can be measured by the cost of learning the skill. The level you have reached in two weeks of study is of no value to the company, because the boss can ask a programmer of any other language in the company to reach your current level after 2-3 weeks of study.

C language is simple, compact, flexible and convenient. Rapid development is valuable to the project, but this is not your value, it is the value of the C language. Therefore, improving your own value means not letting others easily catch up with you.

In order to prevent others from catching up with you and to easily replace you at a lower cost, you also need to learn the following content at the C language level:

1 .C language operating mechanism and compilation process.

2.C language modular idea.

3. In-depth understanding of the process-oriented design ideas of C language.

4. C language programming thinking.

5.C language file synchronization operation

The above are all at the language level and belong to internal skills.

Of course, some more specific external skills are also needed in actual combat. Training external skills can start from Getting familiar with the C language standard library. The fact that these modules can enter the standard library means that they are good enough and can be used in actual projects. Common enough, here are some extremely common ones:

1. Regular expressions

2. Socket network programming

3. Reading PE file operations

4. Process memory query and modification

5. Commonly used data structures and algorithms

Whether practicing internal or external skills, combined with actual combat is the best training method and testing method. Choose according to personal circumstances and preferences, such as:

Network programming uses third-party websites as a springboard for real-time information query. (For example, ID card query)

Use third-party libraries to develop small game cases, such as Sokoban, Minesweeper, Lianliankan, and Xiaoxiaole.

Write small applications and personal dictionaries.

Use C language to do algorithm questions, ACM.

Use C language to do mathematical modeling or mathematical calculations

Use third-party libraries to do terminal mode players

OpenGL does graphics processing

Editor It is recommended to give priority to small projects for practical training. For novices, big projects are very frustrating and they often give up halfway. Implement the small things first, and then optimize them. Next, add new features and slowly iterate to make small things bigger. In this way, when you do it, you will have a sense of accomplishment every time you implement a small function, and you will be motivated to keep moving forward.

Maybe after a relatively long period of time, you have become a proficient C language child, and there are some advanced topics you can continue to learn:

windows programming

Linux Programming

These advanced topics are often used in development, and they can help you implement functions more conveniently.

Usually people who claim to have learned C language at the speed of light in a month are basically not geniuses. They are just impetuous, have relatively low goals, and have limited cognition.

Don’t be too eager for quick success, play slowly, be diligent, and avoid being too eager for quick success. Of course, it is mostly difficult to learn C language by yourself and improve yourself. Without a good teacher to explain, some knowledge points and techniques cannot be digested. My own understanding is not enough, and I cannot understand something a little more advanced. There is also... not enough time and not enough self-control.

So it’s easy to get into C language, but it’s not easy to learn it thoroughly. You need to work harder. Come on, my friend.

The above is the detailed content of What do you need to learn to learn C language well?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:What does vb mean?Next article:What does vb mean?