下面是一套 VS Code + clangd 的完整 C/C++ 开发配置教程。重点记住一句话:clangd 负责智能补全/跳转/诊断/格式化,不负责真正编译和调试;编译靠 CMake/Make/Ninja,调试靠 GDB/LLDB/Windows Debugger。
在 VS Code 开发C/C++,还必须安装编译器和调试器
在C/C++中,*和&有很多用法,具体的使用要根据代码内容来确定。
仓颉编程语言官网:https://developer.huawei.com/consumer/cn/cangjie
| 序号 | 新闻 | 时间 |
|---|---|---|
| 1 | 华为仓颉编程语言正式亮相 —— 2024/06/21 | 2024/06/21 |
生命周期是rust中用来规定引用的有效作用域。在大多数时候,无需手动声明,因为编译器能够自动推导。当编译器无法自动推导出生命周期的时候,就需要我们手动标明生命周期。生命周期主要是为了避免悬垂引用。
按照教程(Visual Studio 2017 社区版(免费)),下载并安装了 Visual Studio 2017 的 C++ 部分
一、简单回顾——什么是数据报套接字
socket,即套接字是一种通信机制,凭借这种机制,客户/服务器(即要进行通信的进程)系统的开发工作既可以在本地单机上进行,也可以跨网络进行。也就是说它可以让不在同一台计算机但通过网络连接计算机上的进程进行通信。也因为这样,套接字明确地将客户端和服务器区分开来。
相对于流套接字,数据报套接字的使用更为简单,它是由类型SOCK_DGRAM指定的,它不需要建立连接和维持一个连接,它们在AF_INET中通常是通过UDP/IP协议实现的。它对可以发送的数据的长度有限制,数据报作为一个单独的网络消息被传输,它可能会丢失、复制或错乱到达,UDP不是一个可靠的协议,但是它的速度比较高,因为它并一需要总是要建立和维持一个连接。
-l参数和-L参数
-l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?-lname,在连接时,装载名字为“libname.a”的函数库
不同的CPU有不同的字节序类型,这些字节序是指 整数 在内存中保存的顺序,这个叫做 主机序。
最常见的有两种:
1.Little endian:将低序字节存储在起始地址