数据结构-哈希表uthash的使用
数据结构-哈希表uthash的使用
栈是数据结构的一种
栈是数据结构的一种
将二维数组赋值给一维的数组指针
将二维数组赋值给一维的数组指针123456789101112131415161718192021//1#include<stdio.h>int main(){ int s[4][6]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; int t[6][4] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; int (*p)[6]; p=t; for(int i = 0; i < 6;i++) printf(" p[%d] : %d\t",i,(*p)[i]);}//2#include<stdio.h>int main(){ int s[4][6]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; int t[6][4] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 ...
多线程C函数学习
多线程C函数学习0x00 pthread_create()函数:创建线程Linux中的pthread_create()函数用来创建线程,它声明在<pthread.h>头文件中,语法格式如下:
1234int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine) (void *), void *arg);
各个参数的含义是:
1)pthread_t *thread :传递一个pthread_t类型的指针变量,也可以直接传递某个pthread_t类型变量的地址。pthread_t 是一种用于表示线程的数据类型,每个pthread_t类型的变量都可以表示一个线程。
2)const const pthread_attr_t *attr:用于手动设置新建线程的属性,例如线程的调用策略,线程所能使用的栈内存大小等。大部分场景中,我们都不需要手动修改线程的属性,将 ...
函数解析:C语言如何使用Openssl库函数
函数解析:C语言如何使用Openssl库函数前言在做学校的工程实践的时候,学习到了关于如何在C语言中使用openssl库函数的方法,这里记录一下,方便以后查阅
PEMPEM函数定义在crypto/pem.h中。函数比较简单,主要的函数有:
PEM_write_XXXX/PEM_write_bio_XXXX
将XXXX代表的信息类型写入到文件/bio中。
PEM_read_XXXX/PEM_read_bio_XXXX
从文件/bio中读取PEM的XXXX代表类型的信息。
XXXX可用代表的有:SSL_SESSION、X509、X509_REQ、X509_AUX、X509_CRL、RSAPrivateKey、RSAPublicKey、DSAPrivateKey、PrivateKey、PKCS7、DHparams、NETSCAPE_CERT_SEQUENCE、PKCS8PrivateKey、DSAPrivateKey、DSA_PUBKEY、DSAparams、ECPKParameters、ECPrivateKey、EC_PUB ...
函数解析:C语言如何使用Mysql数据库函数解析
函数解析:C语言如何使用Mysql数据库函数解析各类函数总结
函数名
描述
弃用
my_init()
初始化客户端库全局变量
mysql_affected_rows()
最后一个 、 或 语句更改/删除/插入 UPDATE的 DELETE行 INSERT数
mysql_autocommit()
设置自动提交模式
mysql_change_user()
在打开的连接上更改用户和数据库
mysql_character_set_name()
当前连接的默认字符集名称
mysql_client_find_plugin()
返回指向插件的指针
mysql_client_register_plugin()
注册一个插件
mysql_close()
关闭与服务器的连接
mysql_commit()
提交交易
mysql_connect()
连接到 MySQL 服务器
是的
mysql_create_db()
创建数据库
是的
mysql_data_seek()
在查询结果集中查找任意行号
mysql_d ...
stat函数详解
stat函数详解stat函数
作用:获取文件信息
头文件:include <sys/types.h> #include <sys/stat.h> #include <unistd.h>
函数原型:int stat(const char *path, struct stat *buf)
返回值:成功返回0,失败返回-1;
参数:文件路径(名),struct stat 类型的结构体
struct stat 结构体详解:12345678910111213141516struct stat{ dev_t st_dev; /* ID of device containing file */文件使用的设备号 ino_t st_ino; /* inode number */ 索引节点号 mode_t st_mode; /* protection */ 文件对应的模式,文件,目录等 nlink_t st_nlink; /* numbe ...
C语言笔记
C语言笔记C 语言中 printf 输出 double 和 float 都可以用 %f 占位符 可以混用,而 double 可以额外用 %lf。
而 scanf 输入情况下 double 必须用 %lf,float 必须用 %f 不能混用。
C语言文件读写
C语言文件读写
这里我会写C语言如何创建,打开,关闭,文本文件或二进制文件。
打开文件对于打开文件,我们用 fopen函数来打开一个文件。
12FILE *fp;//定义一个文件指针fp = fopen(filename,mode);
下面的是fopen函数的函数原型;
1FILE *fopen( const char * filename, const char * mode );
在这里,filename 是字符串,用来命名文件,访问模式 mode 的值可以是下列值中的一个:
模式
描述
r
打开一个已有的文本文件,运行读取文件。
w
打开一个文本文件,允许写入文件。如果文件不存在,则会创建一个新文件。在这里,您的程序会从文件的开头写入内容。如果文件存在,则会被截断为零长度,重新写入。
a
打开一个文本文件,以追加模式写入文件,如果文件不存在,则会创建一个新文件。在这里您的程序会在已有的文件内容中追加内容。
r+
打开一个文件,允许读写文件。
w+
打开一个文本文件,允许读写文件。如果文件已经存在,则会被截断问零长度,如果文件不存在,则会创建一 ...
C语言排序算法
C语言排序算法冒泡排序1234567891011121314151617181920#include <stdio.h>void bubble_sort(int arr[], int len) { int i, j, temp; for (i = 0; i < len - 1; i++)//第一重for循环 for (j = 0; j < len - 1 - i; j++)//第二重for循环,第二重for循环里面次数比第一重少一次 if (arr[j] > arr[j + 1]) {//判断当前这个比后面的大就交换,冒泡从小到大,小于就是从大到小 temp = arr[j]; arr[j] = arr[j + 1];//交换 arr[j + 1] = temp; }}int main() { int arr[] = { 22, 34 ...