![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 58
许野平
非常喜欢软件设计这份工作,有不错的数学基础,喜欢读书、摄影与音乐。
展开
-
C++的GUI(图形用户界面)设计工具
C++的GUI(图形用户界面)设计工具有多种选择,这些工具提供了丰富的控件和功能,帮助开发人员快速开发出美观、易用的图形界面。以上工具各有特点和优势,开发者可以根据项目需求、使用。原创 2024-08-06 11:53:29 · 892 阅读 · 0 评论 -
C++最大的double值的宏定义
在C++ 中,可以使用 头文件中的 std::numeric_limits 模板类来获取 double 类型的最大值。这个模板类提供了一个静态成员函数 max(),它返回给定类型的最大值。在这个例子中,我们包含了 和 头文件,然后使用 std::numeric_limits::max() 函数来获取 double 类型的最大值,并将其打印到控制台。原创 2024-01-14 16:44:07 · 1023 阅读 · 0 评论 -
openssl RSA密钥格式PKCS1和PKCS8相互转换
openssl RSA密钥格式PKCS1和PKCS8相互转换转载 2022-01-08 11:43:11 · 3846 阅读 · 0 评论 -
Windows下查看 DLL 输出函数
我用的是 VS2017 社区版:打开开发人员命令提示符窗口,输入命令 dumpbin /exports xxx.DLL 即可。原创 2021-09-09 14:45:51 · 267 阅读 · 0 评论 -
Rust:FFI 编程中的 CStr 和 CString
CStr在 C 语言中生成的字符串,Rust 使用CStr来表示,它和str类型对应,表明并不拥有这个字符串的所有权。所以CStr表示一个以终止符\n结尾的字节数组的引用,如果它是有效的 UTF-8 字符串,则可以将其转换为 Rust 语言中的&str。实现从 C 语言到 Rust 语言的字符串传递。CString在 Rust 语言中生成的字符串,Rust 使用CString来表示用以传给 C 程序的字符串。CString以终止符\n结尾,并且没有内部\n字符,代码可以首先从 Rust 语言的普原创 2021-08-21 17:58:44 · 2101 阅读 · 0 评论 -
数据结构作业辅导:数据插入与查询的CPP编程方法
以图书管理程序为例,代码如下:struct Book { string id; string name; double price;};struct Book_List { int size; Book books[MAX_BOOK_LIST_SIZE];};void append_book(Book_List* book_list, Book book){ book_list->books[book_list->size] = book; ++book_lis原创 2021-08-14 15:35:27 · 181 阅读 · 0 评论 -
Rust:链接 Windows 下的 MSVC *.lib 静态库
一、Visual Studio 版本首先 Visual Studio 的版本至少在 2015以上。我开始用 2013 版折腾了好几天都没成功,换了 2017 社区版才试验成功。二、静态库项目的编译选项VS2017 的 C/C++ 静态库编译选项中,按照下面的设定:三、Rust 代码导入静态库很简单,静态库中我定义了一个 hello 函数,代码如下:#include "pch.h"#include "framework.h"void hello() { printf(".原创 2021-08-11 19:05:35 · 1297 阅读 · 0 评论 -
数据结构:编程作业点评——如何编写稍复杂一些的程序?
小侄子写了一个数据结构算法的练习,让我来点评一下。我们一起看看他的代码存在哪些问题。题目题目是写一个线性表的相关数据操作算法。具体就是写一个图书管理程序,图书的信息内容如下所示:代码#include<iostream>#include<string>#include<stdlib.h>using namespace std;//书籍结构体struct Book{ string ID;//编号 string Name;//书名.原创 2021-08-10 11:49:36 · 557 阅读 · 1 评论 -
GLib核心应用支持
主事件循环-管理所有可用的事件源线程-对线程、互斥锁、锁、条件和线程私有数据的可移植支持线程池—并发执行工作的线程池异步队列-线程之间的异步通信模块动态加载.动态加载“插件”的便携式方法内存分配-常规内存处理内存片—分配大小相等的内存块组的有效方法IO通道-使用文件、管道和套接字的便携式支持错误报告-报告错误的系统警告和断言消息输出和调试函数-用于输出消息和帮助调试应用程序的函数...原创 2021-07-22 19:05:38 · 594 阅读 · 1 评论 -
GLib 基础
这里给出 GLib 包括的基本内容快速浏览,了解详细内容请去官网查阅相关资料。获取版本号const gchar*glib_check_version()基本数据类型GLib 重新定义了基本数据类型,这样方便在不同平台上移植。其中我最欣赏的是对 char 的处理,我觉得 C++ 里面添加 w_char 处理 Unicode 字符问题,有些多此一局了。GLib 把 gchar 定义为 char,意味着要采用utf8 表达unicode 字符串。其实最近比较引人注目的 rust 编程语言也是...原创 2021-07-22 14:43:18 · 632 阅读 · 0 评论 -
GLib 概览
目录编译GLib 软件包依赖项其他配置选项交叉编译 GLib 软件包在不同架构体系下编译软件包缓存文件变量编写 GLib 应用程序编写 Glib 应用程序线程安全编译 GLib 应用程序在 UNIX 系统上编译 GLib 应用程序运行 GLib 应用程序运行和调试 GLib 应用程序环境变量本地化SystemTapMemory statisticsGLib 修改变更Incompatible changes from 2.0 t.原创 2021-07-22 11:39:08 · 1077 阅读 · 1 评论 -
Glib 入门介绍
话说有个叫Richard Stallman的家伙,立志要开发自由软件。他先搞了个GNU宣言,于是就有了GNU这个缩写。GNU的英文全称就是“GNU's Not Unix!”。尽管 GNU不是UNIX,其实GNU的目标是与Unix兼容的自由软件。GNU是“GNU's Not UNIX”的递归缩写,为避免与gnu(非洲牛羚,发音与“new”相同)这个单词混淆,Stallman宣布GNU应当发音为“Guh-NOO”(/ˈgnuː/ ),与“canoe”发音相似。原创 2021-06-08 17:37:13 · 10087 阅读 · 3 评论