C# 与 C/C++ 的交互
P/Invoke 是可用于从托管代码访问非托管库中的结构、回调和函数的一种技术。托管代码与非托管的区别托管代码和非托管代码的主要区别是内存管理方式和对计算机资源的访问方式。托管代码通常运行在托管环境中,如 mono 或 java 虚拟机等,这些环境提供了垃圾回收器(GC)等工具来管理内存。在托管环境
windows 下使用 vscode + mingw 完成简单 c 或 cpp 代码的运行与调试
windows 下使用 vscode 简单运行调试 c/cpp 代码
Linux 系统下 C/C++ 程序编译
一文理解Linux系统下,C/C++程序编译的过程!
C语言入门:安装环境
C语言入门:安装环境
超详细的visual studio 2022图文安装教程+新建一个c语言程序
安装编译环境并编写程序的图文教程
【数据结构】双向链表的增删查改(C 代码实现)
单链表存在的毛病:因为单链表只能单向遍历链表,对于前插这个操作,单链表必须得找到所需前插节点位置的前一个,那么这时就得从头指针重新遍历一次链表,会造成时间复杂度大大增加。没有头节点(哨兵位)无法删除首节点这些都大大提高了时间复杂度[ 关于算法的时间复杂度与空间复杂度 这一专题,我在之前写的一篇专题中
【Linux C】Linux如何执行一个程序(程序存储空间、系统调用、内核调用)
程序存储空间、用户空间和内核空间、内核调用和系统调用、程序执行过程。
【C进阶】字符串函数
C语言中对字符和字符串的处理很频繁,但是C语言本身是没有字符串类型的,字符串通常放在中或者中字符串常量适用于那些对它不做修改的字符串函数本章重点介绍处理字符串函数的库函数的使用和注意事项。
使用visual studio编译调试代码时,运行窗口一闪而过
对于头一次使用visual studio或者是刚接触编程使用visual studio软件时,可能会遇到这么个情况:代码好不容易写好后准备进行调试,按下调试发现有个什么东西在屏幕上一闪而过,然后下面的输出框显示生成成功,但自己却什么也没有看到,遇到这种情况该怎么办?2.然后点击进入属性找到链接器点开
C语言内存函数
代码格式:memcpy使用要点:1:函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置2:这个函数在遇到 ‘\0’ 的时候并不会停下来3:如果source和destination有任何的重叠,复制的结果都是未定义的4:由于不知道程序猿会传入什么样
Linux设备树(Linux Device Tree)
设备树:是一种描述硬件的数据结构,Linux3.x以后的版本才引入了设备树,不是将设备的每个细节都硬编码到操作系统中,而是可以在引导时传递给操作系统的数据结构中描述硬件的许多方面。设备树由OpenFirmware、OpenPOWER抽象层(OPAL)、电源架构平台需求(PAPR)和独立的扁平设备树(
数据结构:线性表之-循环双向链表(万字详解)
双向链表(Doubly Linked List)是一种常见的链表数据结构。它与普通链表的区别在于,每个节点都有两个指针,一个指向前一个节点,一个指向后一个节点,因此可以从任意一个节点开始,双向遍历整个链表。双向链表的节点通常由三部分组成:数据部分(存储节点的值)、前驱指针(指向前一个节点的指针)和后
C语言实现简单加密算法 凯撒密码 RSA算法 简介及实现
凯撒密码的核心思想就是移位。将明文的每一个字符 在 密码系统所支持字符序列中向右平移N,映射得到新的字符从而实现加密,而解密则相反向左平移N。加密的Key即为N。
【Shell 命令集合 系统管理 】Linux 显示或设置系统时间和日期 date命令 使用指南
date命令是Linux系统中用于显示或设置系统时间和日期的命令。它可以显示当前的系统时间和日期,也可以用于设置系统时间和日期。
C语言之宏详解(超级详细!)
_FILE__ //进行编译的源文件__LINE__ //文件当前的行号__DATE__ //文件被编译的日期__TIME__ //文件被编译的时间__STDC__ //如果编译器遵循ANSI C,其值为1,否则未定义二、用#define定义宏什么是宏?宏可以看作为一些命令的集合。它是一种预处理器指
【腾讯云 TDSQL-C Serverless 产品体验】TDSQL-C MySQL Serverless实践之路
云数据库是指被优化或部署到一个虚拟计算环境中的数据库,可以实现按需付费、按需扩展、高可用性以及存储整合等优势。云数据库的特性有:实例创建快速、支持只读实例、读写分离、故障自动切换、数据备份、Binlog备份、SQL审计、访问白名单、监控与消息通知等。
C语言之共用体、枚举类型、typedef
尽量不要同时初始化多个共用体的成员共用体使用了内存覆盖技术,同一时刻只能保存一个成员的值,如果对新的成员赋值,就会把原来成员的值覆盖掉——用处:节省空间,有两个很长的数据结构,不会同时使用,用共用体的话,只占用最长的那个数据结构所占用的空间。
【Linux】进程控制
Linux进程控制:进程创建、进程终止、等待、替换,制作一个简单的shell
【c语言】贪吃蛇
贪吃蛇小游戏
基于C语言的开源csv解析库:MiniCSV使用示例
C语言解析csv格式文件,本文介绍一个开源简洁的csv解析库的使用:MiniCSV,使用标准C语言设计。一个小型、快速、简单、单文件、BSD许可的C语言CSV解析库。应该能够处理CSV的奇怪之处:多行、转义行、转义列中的转义字符、空行、列数可变的行、Windows或Unix风格的行结尾。不执行任何堆