![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言
每天进步一丢点
做个合格的猿
展开
-
gdb附加调试技巧和常用命令
启动时进行调试:gdb 进程名gdb后台服务调试技巧:有的程序运行后台进行调试需要sudo权限sudo gdb 输入密码后shell comand: 可在gdb下使用 shell命令,例如 shell ps -ef | grep 进程名 (可查看到进程ID)attach pid:(使用attach 附加到进程中进行调试 类似vs的调试->附加到进程)b 设置断点(支持行号,文件名:行号,函数名,文件名:函数名 等)display 变量: 查看变量的值 类似pwatch 变量: 执原创 2020-08-25 18:34:46 · 567 阅读 · 0 评论 -
重要概念知识点【并发、并行】【进程、线程】【同步、异步】
程序猿进阶知识点(重在理解)什么是进程? 什么是线程?进程 系统中正在运行的一个应用程序,程序一旦运行就是进程。 即进程是指程序执行时的一个实例。线程 线程是进程的一个实体。 进程是资源分配的最小单位。 线程是程序执行的最小单位。进程和线程的主要区别进程拥有独立的堆栈空间和数据段,每当启动一个新的进程必须分配给它独立的地址空间,建立众多的数据表来维护...原创 2020-01-17 22:25:54 · 468 阅读 · 0 评论 -
C/C++锁机制(boost)的认知和使用
锁扩充加锁的必需考虑三个问题该锁的不锁,将会导致各种莫名其妙的错误;加锁范围太大,虽然能避免逻辑错误,但如果锁了不该锁的东西,难免会降低程序的效率;加锁方式不合适,该用临界区的用内核对象等,也会降低程序的效率。那么何时该加锁?当同时发生多个“写”操作或者同时发生“读写”操作时就应该加锁.//多线程锁最主要的函数(c语言)int main(){ pthread_mutex_t原创 2017-10-19 00:09:34 · 7305 阅读 · 0 评论 -
c语言mysql代码
c语言实现数据库连接#include <stdio.h>#include <mysql/mysql.h>int main(int argc, char *argv[]){ MYSQL *conn = NULL; // 1.init mysql handler // mysql_init if((conn = mysql_init(NULL)) == NULL)原创 2017-04-03 20:31:31 · 545 阅读 · 0 评论 -
字符串和存储区
特别提醒:注意字符串和字符数组的区别//// main.c// 字符串//// Created by fzl// Copyright © fzl. All rights reserved.///* 1.栈区:保存局部变量:函数里面定义的变量 2.堆区:手动分配内存 3.静态区(全局区):静态变量,全局变量 4.代码二进制区: 5.文字常量区:常量字符串 */#inc原创 2017-04-04 22:44:30 · 556 阅读 · 0 评论 -
字符串相关(字符串数组,字符串处理相关函数、自实现函数)
// main.c// 字符串相关(字符串数组,字符串处理相关函数)//// Created by fzl // Copyright © fzl. All rights reserved.//#include <stdio.h>#include <string.h>/*指针数组*/void test1(){ //字符串数组 char string1[2][10原创 2017-04-04 22:37:31 · 392 阅读 · 0 评论 -
网络编程(二)
网络编程基础(二)1、协议标准文件www.rfc-editor.org2、路由命令route -nnetstat -r3、查看cpu和mem的命令cat /proc/cpuinfocat /proc/meminfo4、查看系统版本号和系统位数cat /etc/issueuname -a5、sizeof和strlen的区别6、struct in_addrstruct in_addr原创 2017-04-04 16:04:09 · 335 阅读 · 0 评论 -
c语言实现链表的创建、增、删、改、查
//// main.c// 链表的基本操作// Created by fzl // Copyright © fzl All rights reserved.//#include <stdio.h>#include <stdlib.h>#define FILENAME "/Users/fzl/Desktop/2.txt"struct Student{ int num原创 2017-04-04 15:03:36 · 937 阅读 · 0 评论 -
c语言文件操作函数及实例
文件三步曲:打开读写关闭//// main.c// 文件操作// Created by fzl // Copyright © All rights reserved.//#include <stdio.h>/** * fputc() */void test1(){ //1.打开文件 /* 参数1:打开文件的路径,绝对路径,相对路径原创 2017-04-04 14:55:49 · 2121 阅读 · 0 评论 -
拷贝函数的选取,极其sizeof()运算符的注意事项及其实例
拷贝函数一般首选memcpy()函数有长度限制,安全可靠拷贝内容无限制,可以拷贝任意内容,例如字符、数组、整形、结构体、类等。拷贝字符串函数尽量选择带长度参数的比较安,如strncpy(),尽量不使用strcpy()strcpy和memcpy()主要有以下3方面的区别拷贝的内容:strcpy()只能复制字符串,memcpy()可以拷贝任意内容,例如字符数组、整型、结构体、类等。复制的方法:原创 2017-03-31 12:42:14 · 616 阅读 · 0 评论 -
面试中极易出现的自实现函数的实现过程
面试中极易出现的函数自实现1.字符串拼接函数 字符串拼接函数(注意:需要将src的字符串拷贝到dst,所以p必须定义成字符串数组,不能为char 的不可修改的字符串)( %5d 不足五位左补空格。)#include <stdio.h>#include <assert.h>char * my_strcat(char *dst,char const *src){ char * ret原创 2017-03-30 13:39:07 · 509 阅读 · 0 评论 -
程序员应该知道的 关于const和static
判断大小端的两种方法第一种方法: 通过指针强制转换整型#include <stdio.h>int main(){ int i = 0x1234567; char *p = (char *)&i; if(*p == 0x12) { printf("big ending\n"); } else printf("small en原创 2016-11-02 22:01:07 · 793 阅读 · 0 评论 -
字符集转换(iconv的相关内容)
gb2312为简体中文,而utf-8是国际通用标准(包括世界上所有语言),gbk又是对gb2312的扩充。iconv命令可以将一种已知的字符集文件转换成另一种已知的字符集文件 它的作用是在多种国际编码格式之间进行文本内码的转换。作为编程接口的iconv包括3个函数:iconv_open函数用于初始化用于转换的内部缓冲区,需要指明需要从何种编码方式转换到哪一种。iconv函数进行实际的转换,原创 2017-03-31 12:53:36 · 563 阅读 · 0 评论 -
c实现队列
今天又应要求补充了很多注释,应该都没问题很容易能看懂,我还加了实现原理图,so easy,妈妈再也不用担心你的学习了!ok队列:先进先出,只能实现尾插,头删如下图:// main.c// 队列// Created by fzl // Copyright © All rights reserved.#include <stdio.h>#include <stdlib.h>type原创 2017-04-04 14:42:13 · 427 阅读 · 8 评论 -
c实现双向链表代码
双向链表:next指向下一个节点,front指向前一个节点双链表原理图: // main.c// 双链表// Created by fzl// Copyright © fzl All rights reserved.//#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct NB{原创 2017-04-04 14:47:17 · 598 阅读 · 3 评论 -
c知识点总结大全
c的基础知识点都在这里可按照目录查找1、C语言32个关键字auto :声明自动变量 一般不使用 double :声明双精度变量或函数 int: 声明整型变量或函数 struct:声明结构体变量或函数 break:跳出当前循环 else :条件语句否定分支(与 if 连用) long :声明长整型变量或函数 switch :用于开关语句 case:开关语句分支 enum :声明枚举原创 2017-04-08 23:38:08 · 1293 阅读 · 0 评论 -
二分查找的思想和实现
二分查找: 1.只适用于一组有序数,杂乱无序的数是不能使用二分法查找的 2.思想:根据你查找的数来判断查找前半段还是后半段/* ======================================================= Name : halfSearch.c Author : fzl Version : Copyright : Y原创 2017-04-08 22:26:21 · 602 阅读 · 0 评论