Original address: https://www.cnblogs.com/shiyanlou/p/6098661.html
Know: https://www.zhihu.com/question/20564904
C language is most of us in the programming of the language, but also familiar with it, but many beginners in the process of learning will inevitably appear confused, such as: Do not know what C language can be developed projects, which can be applied in the actual development of ..., these confusion also led to the process of learning we do not know how to learn, Learn what, so, summarize this list, hope for C language beginners can be helpful ~
What can the C language do?
From the simplest, most familiar to say, after all, when we study in school, the teacher will almost let us go to develop:
The C language can realize some common applications
The following is almost a small project that we must develop after learning C language to a certain stage, simple.
1, C language production simple calculator
The project uses C language to make a simple calculator, carries on the addition, the subtraction, the multiplication, the addition operation.
2, C language to achieve address Book
The project uses the C language to complete a simple address book. It involves important concepts such as structs, arrays, and linked lists.
3, C language use Epoll to achieve high concurrency chat room
The project implements client and server programming, the server uses the epoll mechanism, high concurrency is required, support multi-client chat room chat, the client uses Epoll and fork, the parent process communicates with the child process through the pipe.
4. Writing perpetual calendar in C language
Use the C language to complete a simple calendar function. Enter the corresponding year/month to see the calendar for the current month.
Second, C language can develop games
Of course, C language can also develop some small games, interesting at the same time also mastered the corresponding knowledge points.
5, C language production 2048
Use the C language to complete a 2048 game.
6, C language version Flappy_bird
Use the C language to implement a character version of Flappy Bird
7, C language version of Minesweeper game
Use C language to complete a simple minesweeper game.
8, C language Fast realization Gobang
Implement Gobang games using C language.
Iii. other applications that can be developed by C language
If you think that C language can only develop the small games described above and some familiar applications, then it is a big mistake, because C language can also develop a lot of things, as follows:
9, C language implementation of a PHP-enabled simple Web server
Use C language to implement a simple Web server, and can support the dynamic parsing of PHP programs. The main technologies involved are: Linux socket programming, HTTP protocol (GET request only), fast-cgi protocol.
10, C Language Implementation Ping program
The project uses the C language to implement the ping command. Through the project can be more in-depth understanding of TCP/IP protocol, Master C language network programming techniques.
11, C language implementation of Linux network sniffer
The project listens to the data link layer frame structure sent and received by all local hosts through the native sockets, then parses the type of the packet and logs it to the log file. Implement a lightweight network sniffer.
12, C language Implementation of file type statistics program
By implementing a File type statistics program, a more in-depth understanding of the Linux file system, especially in the file type of judgment, the operation of the directory understanding will deepen.
13, C language implementation of multi-threaded sorting
Project in the Linux environment using the C-language multithreading model to achieve the sorting algorithm, through the project learning, can understand and practice the Linux Environment Programming Foundation and multithreaded model.
14, C language implementation of FTP server
This project implements the support List,get
Iv. implementation of Linux commands in C language
Finally, we introduce how to implement Linux commands in C language, and learn how to understand Linux operating system.
15, C language implementation of the Linux shell command interpreter
By completing the C language implementation of the Linux shell command interpreter project, learning the Linux-based process environment, process control. Also understand how the powerful Linux shell command interpreter works, giving a deeper understanding of Linux systems.
16, C language implementation of Linux Touch command
The C language implements the Linux Touch Command project and learns the Linux environment-based system programming techniques, especially Linux file IO operations related technologies.
17, C Language implementation of the Linux CP command
C language implementation of the Linux CP Command Project learning, you can master the Linux operating system file IO-related system functions and directory-related operations of the system functions, such as open, write, Opendir, Readir. Gain insight into Linux environment system programming.
18, C language implementation of the Linux LS command
Use the C language to implement the Linux LS command to learn the Linux directory and file attributes.
19, C language implementation of the Linux who command
Through the C language implementation of the Linux who command project learning, you can master the Linux operating system for the upper layer to provide access to the system data file interface. A better understanding of how the Linux operating system works.
Last words:
The above 19 large and small projects contain all aspects, can be used as a C language novice project practiced hand list, can also be used as a look at the C language can do what list.
Of course, C language can do more than the above introduction, but also can do more things you do not think of, this need to master C language proficiency, the need for continuous hands-on practical learning.
What projects can the C language develop? Go