首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
码海拾遗:简述C++(一)
】的更多相关文章
码海拾遗:简述C++(一)
C++是Bjarne Stroustrup博士于1982年,在C语言的基础上引入并扩充了面向对象的概念后发明的一种新的程序语言.就与C语言的渊源而言,C++可以说是C语言的超集,它兼容C的一切(可能是小可才疏学浅,并没有发现C可以但C++不可以的东西). C语言面向过程,侧重于算法和数据结构:C++作为一门面向对象的编程语言,具有面向对象编程的特性:封装(数据抽象).继承和多态(动态绑定).通过使用数据抽象,我们可以将类的接口与实现分离:使用继承,可以定义相似的类型并对其相似关系建模:使用动态绑…
码海拾遗:基于MySQL Connector/C++的MySQL操作(连接池)
1.MySQL安装及简单设置 (1)安装:在OSX系统下,可以使用万能的“brew install”命令来进行安装:brew isntall mysql(默认安装最新版的MySQL) (2)启动:brew services start mysql (3)修改密码:update user set authentication_string = password('password'), password_expired = 'N', password_last_changed = now() wh…
码海拾遗:strcpy()、strncpy()和strcpy_s()区别
1.strcpy() 原型:char *strcpy(char *dst,const char *src) 功能:将以src为首地址的字符串复制到以dst为首地址的字符串,包括'\0'结束符,返回dst地址.要求:src和dst所指内存区域不可以重叠且dst必须有足够的空间来容纳src的字符串,若dst空间不足,编译时并不会报错,但执行时因系统不同会出现不同的结果:Mac系统提示“Abort trap:6”(Mac):CentOS7系统会正常运行(可能是个例,可以正常运行) 测试代码: #inc…
码海拾遗:Linux常用命令(一)
一.Linux系统安装 系统安装可以分两类:实体机安装Linux,虚拟机(常用虚拟机软件有两种:VMware和VirtualBox)安装Linux. 安装过程网上有很多教程,这里就不赘述了. 二.常用命令 1.文件和目录 ls 列出目录内容 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的文件(以“‘.”开头的文件,例如.bashrc) -R 连同子目录中的内容一同列出 which 查看指定命令所在路径,例…
码海拾遗:简单Socket(TCP)类实现
最近刚开始啃Unix网络编程(卷1:套接字联网API),为加深TCP连接的建立和终止的理解与记忆,记下本文,方便以后翻看. 同时留下的还有简单的Socket(TCP)类: mySocket.h #pragma once #include <unistd.h> #include <sys/socket.h> #include <arpa/inet.h> #include <strings.h> #include <errno.h> #include…
码海拾遗:Linux多线程mutex锁
多线程计数,每个线程累加10个数. 实现: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <errno.h> #include <pthread.h> pthread_mutex_t num_lock; ; ; void* foo1() { #if 1 pthread_mutex_lock(&num_lock); ;i<;++i) { num…
码海拾遗:strstr()、strcmp()和strcpy()实现
1.strstr()实现 原型:char * strstr(const char * str1, const char * str2) 说明:判断str2是否为str1的子串,如果是则返回str2第一次出现的位置,否则返回NULL 实现: char * strstr(const char * str1, const char * str2) { if (NULL == str1 || NULL == str2) return NULL; while (*str1++ != '\0') { ; *…
C/C++ 知海拾遗
C语言知识拾遗 2022/11/11 memset()函数用法 包含头文件:<string.h> 作用:给任意类型变量数组初始化,即万能初始化函数. 使用形式:memset( void* str,int init, int size); 解释:void* str 表示无类型数组指针,即可传任意类型的指针进入.int init 表示初始化赋予的值,这个传入的值默认为int类型,传入变量为init. int size 表示要初始化数组的长度,默认从首地址开始,初始化前size个数组元素.…
[码海拾贝 之Perl]在字符串数组中查找特定的字符串是否存在
前言 检索一个字符串是否存在于一个数组中, 最主要的想法应该就是对数组进行循环, 逐个推断数组的每一个元素值和给定的值是否相等. (在Java语言还能够把数组转成 List , 在 list 中直接有 contains 方法能够使用) 看一段简单的代码: my @arr2 = qw(str1 str2 str3 str4); foreach(@arr2) { if($_ eq "str2") { print "str2 exist in Array!\n"; las…
在微信公众号"码海"里学了一招:在update语句里使用case when 以避免多次更新导致的数据异常.
需求:将emp表中工资大于一万的降到9成,工资少于一万的乘以1.2. 难点:如果分成两句update执行,在10000附近的值可能会执行两次. 钥匙:在update语句里采用case when,使更新仅仅执行一次. 代码展示: SQL> create table emp( 2 id number(4,0) primary key, 3 salary number(6,0) not null); 表已创建. SQL> insert into emp 2 select rownum,dbms_ra…