Recently, I’ve been experimenting with a few development-related tools that can be considered artifacts. As the saying goes, “A workman must sharpen his tools before he can work well.” I’ll take some time to organize and write about it.
使用VisualGDB在VS上编写Linux程序
As a C++ developer and Linux user, I often write code on Linux. Recently, I discovered VisualGDB (a VS plugin), which is a fantastic tool that allows me to write and run programs directly on Linux from Windows! The debugging experience is even better!
在VPS上部署shadowsocks服务
In the past few days, I helped a colleague set up a VPS for proxy use and organized some related materials along the way. This article is not aimed at beginners. Before reading the following content, you should first have a VPS that can access the external network (foreign network), and secondly, you should have some basic knowledge of Linux operations.
学习C/C++的一些书籍和工具
From the time I began learning C language to now, it has been five or six years, during which I have read quite a few good and bad books, tried many tools (the holy war of compilers/editors), and here I will summarize everything in detail. After messing around for a long time, I have come to a kind of thought, which is different from the “take-it-for-granted” mindset; it is an experience of “doing it yourself.”
未来计划
It’s hard to believe that I will soon graduate from university. Although I have learned (and struggled with) quite a lot during my time at university, I still feel that I need to improve and keep working hard.
I have a few thoughts about the future, and I will write them down at this moment to motivate myself.
谈高考
These days are the time for the college entrance examination, and it reminds me of a few years ago when I took the exam. Back then, I was still too young, thinking that if I had something I wanted to pursue, I should go for it, wasting a lot of time learning programming. But looking back now, it’s important to study hard in high school, as a degree is indeed a threshold for just graduating.
Pthread多线程编程
POSIX Threads (English: POSIX Threads, commonly abbreviated as Pthreads) is the POSIX thread standard that defines a set of APIs for creating and manipulating threads.
删除void*指针引发的内存泄露
When a void*
points to a class object, performing a delete
operation on it will lead to undefined behavior—it is certain that this delete
operation will not call the object’s destructor, resulting in a memory leak.
结构体成员内存对齐问题
Before discussing memory alignment, let’s first introduce a related concept—offset.
The distance between the actual address of a storage unit and the segment address it belongs to is called the intra-segment offset, also referred to as “effective address or offset.”
In simple terms, in a structure, the offset refers to the difference between the address of a member in the structure variable and the address of the structure itself.
C语言中不具有原生bool类型
It seems a bit clickbaity; to be precise, there is no bool
keyword in the C language standard to represent boolean types. In C++, we usually use bool
variables to store logical values. However, there is no bool
type in C; C only has the _Bool
type. Today, when discussing this issue with someone, it can indeed be confusing, so I’m writing it down for future reference.