C&C++学习
程序员学编程
会一点python,Go,C的程序员,欢迎大家关注。
展开
-
malloc和new的区别
1、malloc()函数 malloc的全称是memory allocation,中文叫动态内存分配,在stdlib.h中声明。 原型: void *malloc(size_t size); 说明:分配长度为size字节的内存块。如果分配成功则返回指向被分配内存的指针,分配失败返回空指针NULL。原创 2015-03-07 22:12:32 · 709 阅读 · 0 评论 -
libcurl库浅析
先放上libcurl官方文档:链接第一步:全局初始化#include <curl/curl.h> CURLcode curl_global_init(long flags );在使用libcurl库的时候需要运行上面的函数生成所需要的环境。这个函数在整个程序进程当中只能运行一次。相对应的是curl_global_cleanup :用来清除环境。常用的falgs为下面几个。 CURL_GLOBAL_A原创 2016-06-16 15:26:59 · 857 阅读 · 0 评论 -
一道笔试题目引发的思考
题目下面说法错误的是(C)A、static成员函数没有this指针。 B、static成员函数不能直接访问非static成员。 C、static数据成员不能在类的定义体中初始化。 D、static数据成员独立于类的任意对象而存在,不是该类类型对象的组成部分。分析A选项静态成员函数由于不是与任何的对象相联系,因此它不具有this指针。从这个意义上讲,它无法访问属于类对象的非静态数据成员,也无法访原创 2015-08-21 20:37:06 · 928 阅读 · 0 评论 -
位操作符
操作符的种类: 在C语言当中有以下6中位操作符: > 右移 & 按位与 | 按位或 ^ 按位异或 ~ 取反 左移:在左移位中,值最左边的几位被丢弃,右边多出来的几个空位则由0补齐。 右移:在右移位中,有两种方案,1、算术移位:左边移入的位由原先该值得符号位决定,符号位为1则移入的位均为1,符号位为0则移入的位均为0。2、原创 2015-03-13 14:23:17 · 980 阅读 · 0 评论 -
Map容器的使用总结
map简介 map操作函数 map使用例子 一 数组中重复的数字 二 统计每个单词在输入中出现的次数 三 leetcode 13 Roman to Integer 四 单词转换map简介map是一类关联式容器,它是模板类。关联的本质在于元素的值与某个特定的键相关联,而并非通过元素在数组中的位置类获取。它的特点是增加和删除节点对迭代器的影响很小,除了操作节点,对其他的节点都没有什么影响。对于迭代器原创 2015-07-21 08:44:21 · 2743 阅读 · 1 评论 -
剑指offer之跳台阶&变态跳台阶
跳台阶一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。分析本题就是一个简单的斐波那契数列问题。代码class Solution { public: int climbStairs(int n) { /* //方法一 int prev = 0; int cur = 1; for(int i原创 2015-04-16 16:51:38 · 755 阅读 · 0 评论 -
leetcode24:Swap Nodes in Pairs
题目:Given a linked list, swap every two adjacent nodes and return its head. For example, Given 1->2->3->4, you should return the list as 2->1->4->3. Your algorithm should use only constant space. You原创 2015-04-09 11:14:07 · 809 阅读 · 0 评论 -
leetcode136:single number I&II 及拓展
Single Number I给定一个数组,除了一个元素出现一次之外,其余的元素都出现两次。找出这个元素分析:只要将所有的元素都异或一次,最后的结果就是这个出现一次数。代码:int singleNumber(int A[], int n) { int num; int i; num=A[0]; for(i=1;i<n;i++) { num=nu原创 2015-04-24 10:31:55 · 776 阅读 · 0 评论 -
利用网盘和tortoise svn实现个人代码的版本管理
最近实习的时候发现公司里面利用tortoise svn和服务器备份一些文件和实现版本管理,然后收到启发:能否利用tortoise svn实现个人的文件和小型项目代码的备份以及版本管理呢。鉴于个人有服务器的人比较少,所以想能否利用网盘来代理服务器呢。经过百度之后发现还真的有人这么做。所以学习了一下。在这里重新组织一下自己搭建环境的过程,在这里分享给大家。(说明:相比于公司利用服务器来搭建,浪费了一部原创 2015-01-08 19:31:57 · 1794 阅读 · 1 评论 -
linux静态库和动态库的简单例子
1. 静态函数库 库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译。2. 动态函数库 这类库的名字一般是libxxx.so;相对于静态函数库原创 2015-03-22 12:23:47 · 1240 阅读 · 0 评论 -
C结构体、C++结构体和C++类的区别
1 、C结构体和C++结构体的区别原创 2015-03-06 19:23:27 · 1156 阅读 · 0 评论 -
C语言各种变量存储方式
1、变量类型:C语言的变量分为局部变量和全局变量。 1.局部变量: 指在函数内部或者块内部(即一对花括号包含的区域)[以下均称为块]定义的变量,只对块范围内有效。 特点:不同块中可以有同名变量名,代表不同的变量,互不干扰;函数形参也是局部变量。 2.全局变量: 在函数之外定义的变量,从定义处开始到文件结束均有效,当然可以使用extern修饰将其范围扩大到其他文件。 特点:如果局部变量和全原创 2015-03-20 15:11:49 · 1521 阅读 · 0 评论