First, the environment should have: a Linux operating system, Vim+ctags, GCC, GDB, project source code.
Get a project source code, the most should first compile and run the program, look at the Linux terminal phenomenon! The phenomenon in the terminal is the character interface, which gives us a lot of convenience to follow the lock "axe" position. Whether the statement printed in the interface has a greater connection to the code function we want to change will be the focus of our observation. After locking a string message, use:
Find Path | Xargs grep "string"-rn
Find out where this information appears in the source code, use vim to open the file with/xxx to search and troubleshoot. See if the context of the string information is similar to the code that you want to modify, so you can selectively modify it, and then skip over and look for the rest of the results. If you look at what functions call the target function, my method or find+ xargs grep does not know that there is no other good way (on Linux). Ctags is convenient for you to read the source code when the function jump tracking, very convenient. And GDB is used to debug the modified program in GDB with Ctrl+x+a into the TUI can be like VC display source code, very powerful and convenient.
One months into the job, and finally realized that the graphical interface for the program two times developers really dehumanizing things!
Two development guides for open source C/D programs