
C/C++进阶
文章平均质量分 86
物联全栈123
嵌入式高级架构师|十年工控老兵|AI智能体工业落地
展开
-
Xcode MacOS与clang c++版本关系
C++ Support in ClangClang - C++ Programming Language StatusClang implements the following published and upcoming ISO C++ standards:Language Standard Flag Available in Clang? C++98 / C++03 -std=c++98 Yes (other thanexport) C++11 -..原创 2022-05-20 13:55:26 · 7667 阅读 · 0 评论 -
c语言 设计web server http server
select tcp server 流程图使用非阻塞I / O和select()的服务器参考代码https://www.ibm.com/docs/en/i/7.2?topic=designs-example-nonblocking-io-selectTCP socket建立http://www.gnu.org/software/libc/manual/html_node/Inet-Example.html#include <stdio.h>#include..原创 2021-05-24 10:49:54 · 538 阅读 · 0 评论 -
C语言实现shell指令解析
源代码来自于TI开发板在ARM上实现shell命令解析 第一步:构建命令实现函数和命令表1,定义结构体 和命令表typedef int (*pfnCmdLine)(int argc, char *argv[]);//*****************************************************************************转载 2013-04-18 10:14:04 · 2375 阅读 · 0 评论 -
ifdef的用法
http://blog.21ic.com/user1/2663/archives/2009/65325.html#ifdef的用法头件的中的#ifndef,这是一个很关键的东西。比如你有两个C文件,这两个C文件都include了同一个头文件。而编译时,这两个C文件要一同编译成一个可运行文件,于是问题来了,大量的声明冲突。还是把头文件的内容都放在#ifndef转载 2013-01-06 15:22:44 · 11548 阅读 · 0 评论 -
linux c编程 UDP实例二
代码来自《linux c编程从入门到精通》代码分为服务器和客户机 基本的操作都有了服务器建立sock并绑定后等待接收客户端接受用户输入并发给服务器 服务器收到后返回给客户端使用时先运行server 然后运行client 在client端输入字符串 并回车就能看到效果了服务器外加unistd.h和 string.h /*ex8-7.转载 2012-12-22 11:23:37 · 4568 阅读 · 0 评论 -
大小端检测方法(ARM 和linux系统)
http://blog.youkuaiyun.com/haojianno1/article/details/7925797第一部份:检测ARM或其他单片机一、概念及详解在各种体系的计算机中通常采用的字节存储机制主要有两种: big-endian和little-endian,即大端模式和小端模式。先回顾两个关键词,MSB和LSB:MSB:MoST Significant Bit --转载 2012-12-19 08:51:50 · 9889 阅读 · 0 评论 -
常用的加密解密及编码解码算法
常用的加密解密及编码解码算法 http://iamcaihuafeng.blog.sohu.com/144299832.html今天从Google Reader上发现了一篇文章,关于URL编码,写得还算不错,对自己也有一些启示。顺便把常用的加密及编码算法总结一下。1.常用的加密及解密算法常规加密md5($pass)32位小写:d41d8c转载 2013-01-04 13:41:17 · 11670 阅读 · 1 评论 -
关于指针与函数的几点小结
http://bbs.chinaunix.net/thread-993238-1-1.html1. 首先,在C语言中函数是一种function-to-pointer的方式,即对于一个函数,会将其自动转换成指针的类型.如:#includevoid fun(){}int main(){转载 2013-04-18 11:28:02 · 1317 阅读 · 0 评论 -
C51浮点数显示、浮点数表示方法
C51中的浮点数存储方式--n年前曾在c51bbs论坛中发布过Float 浮点形,它是符合IEEE-754标准的单精度浮点形数据,在十进制中具有7位有效数字。FLOAT型据占用四个字节(32位二进制数),在内存中的存放格式如下:字节地址(由低到高)0 1 2 3浮点数内容 MMMMMMMM MMMMMMMM E MMMMMMM S EEEEEEE其中,S为符号位,存放在最高字节转载 2013-10-10 10:29:00 · 13284 阅读 · 0 评论 -
利用mmap /dev/mem 读写Linux内存 .
http://blog.youkuaiyun.com/zhanglei4214/article/details/6653568使用 hexedit /dev/mem 可以显示所有物理内存中的信息。 运用mmap将/dev/mem map出来,然后直接对其读写可以实现用户空间的内核操作。以下是我写的一个sample[cpp] view plaincopyprint?#in转载 2013-10-22 13:42:38 · 5930 阅读 · 0 评论 -
linux mmap 内存映射
linux mmap 内存映射http://www.perfgeeks.com/?p=723mmap() vs read()/write()/lseek()通过strace统计系统调用的时候,经常可以看到mmap()与mmap2()。系统调用mmap()可以将某文件映射至内存(进程空间),如此可以把对文件的操作转为对内存的操作,以此避免更多的lseek()与read()、write转载 2013-10-22 12:54:27 · 1523 阅读 · 0 评论 -
QT5 串口收发实例代码
以下代码是自己测试门禁系统使用的主要用到了串口的接收和发送 开发环境:xp QT5.1.1串口:38400 N 8 1自动检测可用串口 在xp上测试没问题有些usb转串口会出现波特率不准的问题,CH340的usb转232使用完全正常以下为收发的线程.h 和.cpp两个文件最后附上转sacii显示的代码 #ifndef MYTHREAD_原创 2013-10-29 10:01:04 · 37207 阅读 · 10 评论 -
linux网络编程实例(循环 并发)
1111tcp客户端#include #include #include #include #include #include #include #include #define portnumber 3333int main(int argc, char *argv[]) { int sockfd; ch转载 2014-01-01 11:09:33 · 1877 阅读 · 0 评论 -
C# C++ dll 相互调用文章汇总
====cpp调用cpp DLL 三件套(显式 隐式) 利用C++制作dll并调用dll 显式调用https://blog.youkuaiyun.com/hlx371240/article/details/51507025 ====cli调用cpp DLL 三件套.h .lib .dllhttps://www.cnblogs.com/gadfly/p/3414718.html...转载 2018-11-16 10:18:44 · 632 阅读 · 0 评论 -
md5加密算法c实现,七分注释
http://blog.youkuaiyun.com/coder0621/article/details/1539208经常到csdn来是查资料,每次都会有所收获。总是看别人的感觉很不好意思,于是决定自己也写一点东西贡献出来。于是就有了这篇md5七分注释。希望对用到的朋友有所帮助。记得当初自己刚开始学习md5的时候,从网上搜了很多关于算法的原理和文字性的描述的东西,但是看了很久一直没有搞懂转载 2013-01-04 13:51:45 · 1804 阅读 · 0 评论 -
单向加密算法
本篇内容简要介绍BASE64、MD5、SHA、HMAC几种加密算法。 http://security.group.iteye.com/group/wiki/1710-one-way-encryption-algorithm BASE64编码算法不算是真正的加密算法。 MD5、SHA、HMAC这三种加密算法,可谓是非可逆加密,就是不可解密的加密方法,我们称之为单向加密算转载 2013-01-04 13:46:05 · 1001 阅读 · 0 评论 -
常用编码工具类,支持base64,md5,des,crc32
常用编码工具类,支持base64,md5,des,crc32http://www.iwms.net/n1507c13.aspx常用编码工具类,支持base64,md5,des,crc32 支持从文件到文件,从字符串到字符串的方式操作 以下是源码using System;using System.IO;using System.Security;using转载 2013-01-04 13:43:41 · 1570 阅读 · 0 评论 -
c++ 全局变量 局部变量
http://www.examda.com/ncre2/cpp/jichu/20100421/084509683.html全局变量即在函数外声明的变量,局部变量即在函数内部声明的变量,例如: #include float num=3.14;//一个名为num的全局变量 void main() { float num=2.45;//一个名转载 2011-11-16 09:44:10 · 817 阅读 · 0 评论 -
C/C++全局变量/常量几种方法的区别
定义C/C++全局变量/常量几种方法的区别 2009-01-09 00:22http://hi.baidu.com/tiankui6658/blog/item/c679e9135b295d876538dbac.html在讨论全局变量之前我们先要明白几个基本的概念:1. 编译单元(模块): 在IDE开发工具大行其道的今天,对于编译的一些概念很转载 2011-11-16 09:31:06 · 741 阅读 · 0 评论 -
c 中 static的用法
c中static的作用2009-02-24 16:06 作用1,模塊內使用 作用二:記憶效能 作用三:初始化為0 作用四:類內定義 转自(from http://www.cnblogs.com/dc10101/archive/2007/08/22/865556.html),比较有意思在C语言中,static的字面意思很容易把我们导转载 2011-12-12 11:16:41 · 892 阅读 · 0 评论 -
C/C++中const关键字详解
C/C++中const关键字详解http://www.cnblogs.com/yc_sunniwell/archive/2010/07/14/1777416.html 为什么使用const?采用符号常量写出的代码更容易维护;指针常常是边读边移动,而不是边写边移动;许多函数参数是只读不写的。const最常见用途是作为数组的界和switch分情况标号(也可以用枚举符代替)转载 2011-12-12 14:50:56 · 821 阅读 · 0 评论 -
const static
const & static static 类型 函数名()这里的static修饰函数,说明这个函数只具有内部链接属性(只能被本文件内的其它函数调用,不能被其它文件中的函数调用)const 类型 函数名()这里的const修饰函数的返回类型,说明返回值不可修改。const:只读static:独立分配存储区,记忆功能默认分类|转载 2011-12-12 11:38:50 · 1110 阅读 · 0 评论 -
auto, static, register, const, volatile
1、逗号表达式的求解过程:先求表达式1的值,再求表达式2的值,整个表达式的值是表达式2的值;1. 局部变量: 局部变量也叫自动变量, 它声明在函数开始, 生存于栈, 它的生命随着函数返回而结束.2. 全局变量: 全局变量声明在函数体外, 一般应在函数前; 每个函数都可以使用它, 不过全局变量应尽量少用. 当全局变量与局部变量重名时, 使用的转载 2011-12-12 11:42:47 · 635 阅读 · 0 评论 -
c语言模块化(转)
c语言模块化(转)在C语言的应用领域,如通讯领域和嵌入式系统领域,一个的软件项目通常包含很多复杂的功能,实现这个项目不是一个程序员单枪匹马可以胜任的,往往需要一个团队的有效合作,另外,在一个以C代码为主的完整的项目中,经常也需要加入一些其他语言的代码,例如,C代码和汇编代码的混合使用,C文件和C++的同时使用。这些都增加了一个软件项目的复杂程度,为了提高软件质量,合理组织的各种转载 2011-12-12 11:47:05 · 1074 阅读 · 0 评论 -
C/C++指令#undef,#ifdef,#ifndef,#if的用法
http://edu.chinawuliu.com.cn/two/c/zh/100531.shtml#undef #undef 是在后面打消以前界说的宏界说 该指令的形式为 #undef 标识符 此鱿脯标识符是一个宏名称。如不美观标识符当前没有被界说成一个宏名称,那么就会忽略该指令。 一旦界耸ё伽措置器标识符,它将连结已界说状况且在浸染域内,直到轨范竣转载 2011-12-13 15:14:54 · 10238 阅读 · 0 评论 -
Codeblocks 模块化编程 头文件
Codeblocks 模块化编程我们新建一个c工程,默认会有main.c接下来第一步新建 new.h new.c第二步新建two.h two.c注意在保存.h 和.c的时候把下面的两项编译选项都勾上一般情况下我们可以在头文件中这么写声明,也可以使用cd自带的头文件声明#ifndef _X_H_#define _X_H_ #endif原创 2011-12-13 16:55:36 · 5017 阅读 · 0 评论 -
c语言模块化(转)
c语言模块化(转)在C语言的应用领域,如通讯领域和嵌入式系统领域,一个的软件项目通常包含很多复杂的功能,实现这个项目不是一个程序员单枪匹马可以胜任的,往往需要一个团队的有效合作,另外,在一个以C代码为主的完整的项目中,经常也需要加入一些其他语言的代码,例如,C代码和汇编代码的混合使用,C文件和C++的同时使用。这些都增加了一个软件项目的复杂程度,为了提高软件质量,合理组织的各种转载 2011-12-13 15:28:09 · 926 阅读 · 0 评论 -
任务、进程和线程的区别
http://blog.youkuaiyun.com/ranzi/article/details/96195http://www.cnblogs.com/lmjob/archive/2009/08/10/1542684.html摘: 任务(task)是最抽象的,是一个一般性的术语,指由软件完成的一个活动。一个任务既可以是一个进程,也可以是一个线转载 2011-12-16 13:22:21 · 3140 阅读 · 0 评论 -
c c++指针详解
第一章。指针的概念http://hi.baidu.com/hellosimple/blog/item/318fb7f61918ec63dcc47415.html指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。先声转载 2012-02-11 15:53:08 · 1104 阅读 · 0 评论 -
C 和 C++ 混合编程
http://fangzhzh.info/blog/mixing-c-and-cpp-programming.html在最近的arm开发中,因为一些特定的需求,需要使用从C文件中调用以前C++程序中的类和方法。参考网上的一些资料,本文1将相关的知识点简要总结如下:c&c++混合编程的注意事项,在c++函数中调用c函数的方法,在c函数中调用c++函数的方法,在c函数中调用C++对象及其中转载 2012-02-23 16:12:02 · 9608 阅读 · 0 评论 -
sizeof和strlen
http://mazhijing.blog.51cto.com/215535/68644由以下几个例子我们说明sizeof和strlen之间的区别: (1) char* ss ="0123456789"; sizeof(ss)为4, ss是指向字符串常量的字符指针 strlen(*ss)为1,*ss是第一个字符 (2) char ss[] = "0123转载 2012-02-28 13:19:31 · 1030 阅读 · 0 评论 -
野指针
野指针 指针是个很强大的工具,可是正因为它太强大,所以要操作它不是件易事。操作不当造成的野指针,甚至会引起系统死机等比较严重的后果。 如果程序定义了一个指针,就必须要立即让它指向一个我们设定的空间或者把它设为NULL,如果没有这么做,那么这个指针里的内容是不可预知的,即不知道它指向内存中的哪个空间(即野指针),它有可能指向的是一个空白的内存区域,可能指向的是已经受保护的区域,甚转载 2012-08-28 13:53:56 · 1041 阅读 · 0 评论 -
makefile经典实例
makefile实例【转载,非常不错的一篇博文,循序渐进,简单易懂】假设我们有下面这样的一个程序,源代码如下: /* main.c */ #include #include int main(int argc,char **argv) { mytool1_print("hello"); mytool2_print("hello"); }转载 2011-12-19 18:40:54 · 2100 阅读 · 0 评论 -
c++全局变量初始化与不初始化
C/C++的全局变量初始化与不初始化的区别作者:佚名出处:IT专家网2009-09-11 07:00http://webservices.ctocio.com.cn/net/405/9158905.shtml本文介绍C/C++的全局变量初始化与不初始化的区别。 在C语言里,全局变量如果不初始化的话,默认为0,也就是说在全局空间里转载 2011-11-16 09:40:38 · 1872 阅读 · 0 评论