c/c++(c++和网络编程)日常积累(二)
https://www.cnblogs.com/robinsons/p/3667032.html
https://blog.csdn.net/u013457167/article/details/50759811?utm_source=blogxgwz2
阻塞,非阻塞,同步,异步
https://www.jianshu.com/p/b8203d46895c
IO多路复用的三种机制Select,Poll,Epoll
https://www.jianshu.com/p/397449cadc9a
Socket中SO_REUSEADDR详解
1、一般来说,一个端口释放后会等待两分钟之后才能再被使用,SO_REUSEADDR是让端口释放后立即就可以被再次使用。
SO_REUSEADDR用于对TCP套接字处于TIME_WAIT状态下的socket,才可以重复绑定使用。server程序总是应该在调用bind()之前设置SO_REUSEADDR套接字选项。TCP,先调用close()的一方会进入TIME_WAIT状态
.......
https://blog.csdn.net/u010144805/article/details/78579528
C++ 11 左值,右值,左值引用,右值引用,std::move
https://blog.csdn.net/xiaolewennofollow/article/details/52559306
如何在C/C++中调用Shell脚本
http://baozh.github.io/2013-11/how-to-call-shell-script-in-c-plus-plus-program/
孤儿进程和僵尸进程
https://www.cnblogs.com/lfri/p/12575637.html
c++ split分割字符串实现
#include <iostream>
#include <sstream>
#include <string>
#include <vector>
using namespace std;
void split(const string& s,vector<int>& sv,const char flag = ' ') {
sv.clear();
istringstream iss(s);
string temp; while (getline(iss, temp, flag)) {
sv.push_back(stoi(temp));
}
return;
}
TCP的TIME_WAIT
https://www.cnblogs.com/zhenbianshu/p/10637964.h
linux管理时间
https://blog.csdn.net/liumiaocn/article/details/79250793
https://www.cnblogs.com/pipci/p/12833228.html
Linux 关闭系统时间同步
https://blog.csdn.net/cb1576351/article/details/106040844
源于一次项目需要修改系统时间,但是每次修改后又被同步回网络时间,找了好久发现是这个
原因:
NTP即Network Time Protocol(网络时间协议),是一个互联网协议,用于同步计算机之
间的系统时钟。timedatectl程序可以自动同步Linux系统时钟到使用NTP的远程服务器(大部
分linux系统自带ntp服务而不带ntp client,所以纠结了半天找不到为什么都没装NTP每次改
了时间又被同步回网络时间去了)。
1、timedatectl命令:
timedate
Local time: 三 2017-07-05 10:57:53 CST
Universal time: 三 2017-07-05 02:57:53 UTC
Timezone: Asia/Chongqing (CST, +0800)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
2、开启关闭ntp
timedatectl set-ntp true/false
其它
查找和设置Linux本地时区
1.显示系统的当前时间和日期
timedatectl status
结果中RTC time就是硬件时钟的时间。
2.Linux系统上的time总是通过系统的timezone设置的,查看当前时区:
timedatectl | grep Time
3.查看所有可用的时区:
timedatectl list-timezones
timedatectl list-timezones | egrep -o “Europe/L.*”
timedatectl list-timezones | egrep -o “America/N.*”
5.在Linux中设置本地时区,使用set-timezone开关:
timedatectl set-timezone “Asia/shagnhai
5.在Linux中设置本地时区,使用set-timezone开关:
timedatectl set-timezone “Asia/shagnhai
7.只设置日期的话可以使用set-time开关以及YY:MM:DD(年,月,日)的日期格式。
timedatectl set-time 20151120
8.设置日期和时间:
timedatectl set-time '16:10:40 2015-11-20
9.设置硬件时钟为UTC可以使用 set-local-rtc boolean-value选:
首先确定硬件时钟是否设置为本地时区:
9.设置硬件时钟为UTC可以使用 set-local-rtc boolean-value选:
首先确定硬件时钟是否设置为本地时区:
timedatectl | grep local
将硬件时钟设置为本地时区:
timedatectl set-local-rtc 1
将硬件时钟设置为UTC:
timedatectl set-local-rtc 0
C语言 用http post方式 上传json数据流程参考
https://blog.csdn.net/qq_36072126/article/details/103836282
创建json结构数据
my_buff就是最后要post的content
cJSON *usr ;
usr=cJSON_CreateObject(); //创建根数据对象
cJSON_AddStringToObject(usr,"brand",ETC_baseinfo.brand); //厂家型号
cJSON_AddStringToObject(usr,"deviceIP",ETC_baseinfo.deviceIP); //车辆检测器IP地址
cJSON_AddStringToObject(usr,"deviceId",ETC_baseinfo.deviceId); //设备编号
cJSON_AddNumberToObject(usr,"devicePort",ETC_baseinfo.devicePort); //车辆检测器Port端口
cJSON_AddStringToObject(usr,"gantryId",ETC_baseinfo.gantryId); //门架编号
cJSON_AddStringToObject(usr,"serverAddress",ETC_baseinfo.serverAddress); //车辆检测器服务地址
cJSON_AddStringToObject(usr,"stateTime",ETC_baseinfo.stateTime); //数据生成时间
char *out = cJSON_Print(usr); //将json形式打印成正常字符串形式
printf("out old string:\n%s\n",out);
free(out);
char *out2 = cJSON_PrintUnformatted(usr);
sprintf(my_buff,"%s",out2);
free(out2);
cJSON_Delete(usr); // 释放内存
json库nlohmann简单使用教程,快速入手,完成json对象的构建,从STL构造json,以及序列化和反序列化操作,二进制写入、读取本地数据
https://blog.csdn.net/u011341856/article/details/108797920
c/c++(c++和网络编程)日常积累(二)的更多相关文章
- iOS开发网络篇—网络编程基础(二)
下面叙述的是关于几个必须要知道的iOS网络编程入门级别的要点: 1.客户端如何找到连接的服务器 客户端通过URL找到想要连接的服务器 2.什么是URL URL的全称是Un ...
- 网络编程-socket(二)
https://www.cnblogs.com/mys6/p/10587673.html(网络编程) 持续通话 总结 # 网络开发的架构 :C/S B/S# mac地址是什么 -身份证号# ip地址 ...
- TCP/IP网络编程系列之二(初级)
套接字类型与协议设置 我们先了解一下创建套接字的那个函数 int socket(int domain,int type,int protocol);成功时返回文件描述符,失败时返回-1.其中,doma ...
- Linux 网络编程详解二(socket创建流程、多进程版)
netstat -na | grep " --查看TCP/IP协议连接状态 //socket编程提高版--服务器 #include <stdio.h> #include < ...
- VC++ 网络编程总结(二)
2.基本的Windows Socket API编程 需要在程序中添加下面的包含语句:#include <winsock2.h> #pragma comment( lib, " ...
- [C#]网络编程系列专题二:HTTP协议详解
转自:http://www.cnblogs.com/zhili/archive/2012/08/18/2634475.html 我们在用Asp.net技术开发Web应用程序后,当用户在浏览器输入一个网 ...
- Linux网络编程学习(十二) ----- 结语
该书提前看完了,重点看了第四章和第六章,第七章以后只是大致浏览了一下,如果以后工作中涉及这一块再仔细研究一下,大概花了二十天的样子,主要了解了进程间的通信方式.socket编程以及五种I/O模式,看的 ...
- python网络编程(十二)
协程 协程,又称微线程,纤程.英文名Coroutine. 协程是啥 首先我们得知道协程是啥?协程其实可以认为是比线程更小的执行单元. 为啥说他是一个执行单元,因为他自带CPU上下文.这样只要在合适的时 ...
- iOS网络编程解析协议二:XML数据传输解析
XML两种解析方式,一种是SAX,NSXMLParser是SAX方法解析,另一种是DOM(Document Object Model); 区别: SAX: 只能读,不能修改,只能顺序访问,适合解析大型 ...
- unix网络编程笔记(二)
第四章笔记 1. 基本Tcpclient/server程序的套接字函数 2. socket函数: int socket(int family,int type,int protocol); (1)so ...
随机推荐
- Redis 源码简洁剖析 03 - Dict Hash 基础
Redis Hash 源码 Redis Hash 数据结构 Redis rehash 原理 为什么要 rehash? Redis dict 数据结构 Redis rehash 过程 什么时候触发 re ...
- python20day
昨日回顾 正则表达式 元字符 量词 贪婪非贪婪 转义符 re模块 findall 会优先显示分组内容 取消优先显示(?: ) search 只能返回第一个符合条件的项 得到的结果需要.group()取 ...
- 学习MyBatis必知必会(2)~MyBatis基本介绍和MyBatis基本使用
一.MyBatis框架基本介绍: 1.认识 MyBatis: MyBatis 是支持普通 SQL 查询,存储过程和高级映射的持久层框架,严格上说应该是一个 SQL 映射框架. 其前身是 iBatis, ...
- 羽夏看Win系统内核—— APC 篇
写在前面 此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...
- ansible学习(一)
基础概念 ansible是什么? 它是一个"配置管理工具",它是一个"自动化运维工具",如果你没有使用过任何配置管理工具,不要害怕,看完这篇文章,你自然会对an ...
- Linux防火墙firewalld安全设置
背景描述 防火墙是具有很好的保护作用.入侵者必须首先穿越防火墙的安全防线,才能接触目标计算机.在公司里数据安全是最重要的,要求安全部门进行全公司进行服务器防火墙安全搭建,在原有的基础上进行安全的防火墙 ...
- mac os 利用ssh 搭建git server服务器详细教程,以及git基本用法
详细讲mac 连接mac的git操作 首先在服务端上 第一:新建一个仓库 1, cd /Users/userName/projects 用linux命令进入一个你想要创建与他人共享的文件夹. 2,su ...
- 分配IP地址的好东西 DHCP以及NAT简单介绍
主机配置协议DHCP 1.DHCP应用场景 2.DHCP基础原理 3.NAT简单介绍 4.配置命令 1.手工配置IP地址,工作量比较大而且不好管理,如果用户自己修改参数,可能会导致ip地址冲突,这个时 ...
- 在win10上安装face_recognition(人脸识别)
github上有个项目face_recognition,是用于人脸识别的 主要是window上安装这个项目会繁琐些,linux上据项目文档上介绍是妥妥的. 项目地址: https://github. ...
- Spring系列15:Environment抽象
本文内容 Environment抽象的2个重要概念 @Profile 的使用 @PropertySource 的使用 Environment抽象的2个重要概念 Environment 接口表示当前应用 ...