当前位置: 首页 > news >正文

网站中文域名企业网络推广培训

网站中文域名,企业网络推广培训,网站出售商品建设,东莞工程建设交易中心网【C/C】C语言到C的入门知识点#xff08;主要适用于C语言精通到Qt的C开发入门#xff09; 文章目录 C语言与C的不同C中写C语言代码C语言到C的知识点Qt开发中需要了解的C基础知识namespace输入输出字符串类型class类构造函数和析构函数#xff08;解析函数#xff09;类的继…【C/C】C语言到C的入门知识点主要适用于C语言精通到Qt的C开发入门 文章目录 C语言与C的不同C中写C语言代码C语言到C的知识点Qt开发中需要了解的C基础知识namespace输入输出字符串类型class类构造函数和析构函数解析函数类的继承 附录压缩字符串、大小端格式转换压缩字符串浮点数压缩Packed-ASCII字符串 C语言与C的不同 C语言是一门主要是面向工程的语言 C则是面向对象 C语言中 某些功能实现起来较为繁琐 比如结构体定义 一般写作 typedef struct stu_A { }A;也可以写作 typedef struct { }A;但 大括号后面的名称是不可省去的 不过 C的写法就比较简单 除了支持上述写法外 也支持直接声明 typedef struct A { }另外 C是完全支持C语言库和语法的 不过C里面的库也有些很方便的高级功能用法 只不过实现起来可能不如C的速度快 再者 C语言与C的编译流程不一样 C语言没有函数重载 所以给编译器传参就是直接传函数名称 但是C除了传函数名称外 还会穿函数的参数、类型等等 以实现函数重载 C中写C语言代码 上文提到 C可以完全兼容C的写法 但是编译流程也还是不一样 所以如果在编译层面进行C语言代码编译 则通常用以下方法 extern C { ... }表面大括号内的内容用C的方法进行编译 另外 如果还是用C的编译器 但要实现C语言函数 则需要用到C语言的库 在C语言中 我们一般用如下方法导入库 #include stdio.h此方法同样适用于C 但是C可以更方便的写成去掉.h的方式 比如 #include iostream在C中 为了调用C语言的库 可以采用在原库名称前加一个c的方式导入 如 #include cstdio这样就可以使用printf等函数了 甚至比C的std方法更快 C语言到C的知识点 Qt开发中需要了解的C基础知识 namespace C面向对象的特性下诞生的一个名称 表示某个函数、变量在某个集合下 用作namespace 比如 iostream库中的关键字cin在std下 则写作std::cin std就是namespace ::表示某空间下的某某 前面是空间名称 后面是变量、函数名称 用using namespace可以告诉编译器以下都用xx名称空间 比如 using namespace std; couta;如果没有告诉编译器所使用的空间名称 则要写成 std::couta;同样 可以自定义某一段代码属于哪个空间 namespace xx { ... }输入输出 在C中 用iostream作为输入输出流的库 #include iostream用cin和cout关键字进行输入和输出 如 using namespace std; int a0; cina; //输入到acouta; //输出a类比scanf和printf 同样 还有一个关键字endl表示换行 cout和cin的传参是不固定的 由编译器自行裁定 字符串类型 在C语言中 常用char *表示字符串 但是在C中 可以直接用string类型 比如 char * s456; string str123;由于cout的特性 这两种字符串都可以直接打印 但如果使用C语言中printf的打印方式时 采用%s方式打印字符串 则不能传入string类型 class类 C的核心就是class 同Python等支持面向对象的语言一样 可以理解成一个支持函数、继承、自动初始化、销毁的结构体 在class类中 有private私有、public公有变量 前者只能内部访问 后者可以外部调用使用 如 class A { public: int a; private: int b; }a可以用A.a的方式方位 b则外部无法访问 构造函数和析构函数解析函数 构造函数可以理解成对类的初始化 反之析构函数则是退出时进行销毁前的函数 两者需要与类的名称相同 析构函数则在前面加一个~表示非 如 class A { public: int a; A(); ~A(); private: int b; }A::A() { ... }A::~A() { ... }构造函数可以定义传参 析构函数则不行 类的继承 如果有两个类A和B 想让A里面包含B 则可以写作继承的写法 继承后 A类的变量可以直接调用B下面的成员 如 class B { int b; } class A: public B { int a; }在定义A后 可以访问到B的成员b 当然 继承也可以私有 附录压缩字符串、大小端格式转换 压缩字符串 首先HART数据格式如下 重点就是浮点数和字符串类型 Latin-1就不说了 基本用不到 浮点数 浮点数里面 如 0x40 80 00 00表示4.0f 在HART协议里面 浮点数是按大端格式发送的 就是高位先发送 低位后发送 发送出来的数组为40,80,00,00 但在C语言对浮点数的存储中 是按小端格式来存储的 也就是40在高位 00在低位 浮点数4.0f 地址0x1000对应00 地址0x1001对应00 地址0x1002对应80 地址0x1003对应40 若直接使用memcpy函数 则需要进行大小端转换 否则会存储为 地址0x1000对应40 地址0x1001对应80 地址0x1002对应00 地址0x1003对应00 大小端转换 void swap32(void * p) {uint32_t *ptrp;uint32_t x *ptr;x (x 16) | (x 16);x ((x 0x00FF00FF) 8) | ((x 8) 0x00FF00FF);*ptrx; } 压缩Packed-ASCII字符串 本质上是将原本的ASCII的最高2位去掉 然后拼接起来 比如空格(0x20) 四个空格拼接后就成了 1000 0010 0000 1000 0010 0000 十六进制82 08 20 对了一下表 0x20之前的识别不了 也就是只能识别0x20-0x5F的ASCII表 压缩/解压函数后面再写 //传入的字符串和数字必须提前声明 且字符串大小至少为str_len 数组大小至少为str_len%4*3 str_len必须为4的倍数 uint8_t Trans_ASCII_to_Pack(uint8_t * str,uint8_t * buf,const uint8_t str_len) {if(str_len%4){return 0;}uint8_t i0;memset(buf,0,str_len/4*3); for(i0;istr_len;i){if(str[i]0x00){str[i]0x20;}}for(i0;istr_len/4;i){buf[3*i](str[4*i]2)|((str[4*i1]4)0x03);buf[3*i1](str[4*i1]4)|((str[4*i2]2)0x0F);buf[3*i2](str[4*i2]6)|(str[4*i3]0x3F);}return 1; }//传入的字符串和数字必须提前声明 且字符串大小至少为str_len 数组大小至少为str_len%4*3 str_len必须为4的倍数 uint8_t Trans_Pack_to_ASCII(uint8_t * str,uint8_t * buf,const uint8_t str_len) {if(str_len%4){return 0;}uint8_t i0;memset(str,0,str_len);for(i0;istr_len/4;i){str[4*i](buf[3*i]2)0x3F;str[4*i1]((buf[3*i]4)0x30)|(buf[3*i1]4);str[4*i2]((buf[3*i1]2)0x3C)|(buf[3*i2]6);str[4*i3]buf[3*i2]0x3F;}return 1; }
http://www.hkea.cn/news/14343752/

相关文章:

  • 江苏建站系统WordPress注册无需发送邮件
  • 做网站联盟要多少钱网络营销导向企业网站建设的一般原则
  • 免备案手机网站软件系统定制开发
  • 高密住房和城乡建设部网站装修公司网站模板下载
  • 淘宝网网站建设网站如何被搜索引擎收录
  • 济南城乡建设官方网站兰州网站关键字优化
  • 深圳招聘网站排行域名注册查询入口网址
  • 一份完整的项目计划书谷歌seo怎么做
  • 电子商务网页设计与网站建设论文上海互联网公司排名
  • 给企业做网站的公司有哪些网站建设项目的工期计划
  • 江苏网站建设哪家快点网站建设有哪些方法
  • c语言也能干大事网站开发网站建设素材使用应该注意什么
  • 怎么在现有网站做直播内容电子商务网站建设选择
  • 购物网站怎么运营推广我国档案网站建设比较分析
  • 旅游网站管理系统论文深圳石岩做网站的公司
  • 公司招人去哪个网站宁波网站建设与推广方案
  • 电子商务书城网站建设方案注册功能的网站怎么做
  • 做淘客网站备案动画制作流程
  • 修车店怎么做网站网站怎么看好与不好
  • 网站建设公司的商业模式安徽建筑培训网
  • 电子商务网站建设维护有没有欺骗企业自建网站 备案
  • 赤峰网站建设企业福田附近公司做网站建设多少钱
  • 本机电脑怎么做网站免费咨询医生男科
  • 东莞高端网站建设费用wordpress自动提取标签
  • vue做的网站影响收录么外贸英文建站
  • php网站页面转wordpresswordpress模板无法自定义导航
  • txt怎么做网站网站后台如何修改参数
  • 广州贸易网站正能量视频素材免费下载网站
  • 网站策划书结尾网站建设公司怎么发展
  • 营销型网站分为哪几种如何做好网站seo优化