
c++
文章平均质量分 68
kereus
这个作者很懒,什么都没留下…
展开
-
C++数组长度
#include using namespace std;int main(){ int intArray[] ={5,2,4,7,1,3,2,6}; int len = sizeof(intArray)/sizeof(intArray[0]); int *a = new int[8]; cout<<len<<" "<<sizeof(a)<<endl; getchar(); re原创 2014-04-05 15:59:46 · 974 阅读 · 0 评论 -
C#调用C++dll 传出字符串
//C++ 函数返回字符串#include #include using namespace std;//错误const char* getStr1(){ string s = "1"; return s.c_str();}//正确string getStr2(){ string s = "1"; return s;}//正确const void getStr3(原创 2015-02-19 20:49:54 · 6049 阅读 · 0 评论 -
使用快速排序例程进行排序——qsort函数
参考:http://www.cplusplus.com/reference/cstdlib/qsort/转载 2015-04-22 22:29:22 · 563 阅读 · 0 评论 -
~0uLL >> 1
0uLL:unsigned long long 类型的0~:“二进制 按位 否 运算符”>>:右移运算符转载 2015-04-23 10:00:36 · 4642 阅读 · 0 评论 -
编程之美1.9——高效率地安排见面会
#include#includeusing namespace std;const int N = 6;struct Time{ int begin; int end;};bool forbit[N];//禁止数组,为false的时候,表示当前该颜色可以使用 int maxcolors;Time times[N];int color[N]={0};int cmp(cons转载 2015-04-23 11:14:21 · 671 阅读 · 0 评论 -
编程之美2.1——求二进制数中1的个数
#includeusing namespace std;#define i1 0xFFint main(){ //扩展1 //将32位拆分为4个8位,之后采用查表法 unsigned long a; a = 65536; int a1 = a&i1; a = a>>8; int a2 = a&i1; a = a>>8; int a3 = a&i1; a = a>>8;原创 2015-04-23 21:15:40 · 621 阅读 · 0 评论 -
n&(n-1)的运用——二进制数中1的个数、判断它是否是2的方幂
//二进制数中1的个数int Count(int v){ int num = 0; while(v) { v &= (v-1); num++; } return num;}//判断n是否为2的方幂bool isPower(int n){ return n>0&&((n&(n-1))==0);}转载 2015-04-23 22:54:45 · 689 阅读 · 0 评论 -
C#调用C++ dll,并向调用的函数传递“函数指针”
SocketBLL(C++dll项目):BLL.h文件:#pragma once#include typedef void(*MsgManagement)(int);MsgManagement MsgManage;HANDLE h;DWORD WINAPI RecieveTransientMsg(LPVOID pParam);extern "C" _declspec(dll原创 2015-01-27 19:23:47 · 4496 阅读 · 0 评论 -
编程之美3.3——类似——两个字符串的最长公共子序列(LCS)
#include #include #include using namespace std; #define MAXN 10001 char A[MAXN]; char B[MAXN]; int dp[MAXN][MAXN]; // 设Z为A和B的最长公共子序列,dp[i][j]表示A从位置i开始的后缀与 // B从位置j开始的后缀的最长公共子序列原创 2015-04-16 22:39:25 · 598 阅读 · 0 评论 -
按照字典的顺序输出字符串,并不允许重复
#include#include#includeusing namespace std;struct subStr{ string s; friend bool operator<(const subStr a,const subStr b) { return a.s>b.s; }}newS;priority_queue q;//Output the strings原创 2015-04-24 21:34:53 · 1130 阅读 · 0 评论 -
不同字符的数量是fibonacci数的子字符串
题目1 : Lucky Substrings时间限制:10000ms单点时限:1000ms内存限制:256MB描述A string s is LUCKY if and only if the number of different characters in s is a fibonacci number. Given a string consisting of only l原创 2015-04-24 22:43:06 · 1070 阅读 · 0 评论 -
编程之美3.1——字符串循环移位
#include#includeusing namespace std;//子串、反序、查找//穷举所有循环移位,逐个进行字符串匹配,时间复杂度:o(n^2)void fun1(string s1,string s2){ string temp,part1="",part2=""; int j = s1.length(); bool r = false; for(int i=0原创 2015-04-16 18:39:32 · 667 阅读 · 0 评论 -
编程之美3.2——电话号码对应英语单词
#include using namespace std; const int MaxLength = 3; char c[10][10] = {"", "", "ABC", "DEF", "GHI", "JKL", "MNO", "PQRS", "TUV", "WXYZ"}; int total[10] = {0,0,3,3,3,3,3,4,3,4}; int number[转载 2015-04-16 20:54:19 · 846 阅读 · 0 评论 -
C++获取时间 场景写日志
#include "stdafx.h"#include #include#include#includeusing namespace std;int _tmain(int argc, _TCHAR* argv[]){ //获取当前日期 time_t t = time(0); char tmp[64]; strftime(tmp,sizeof(tmp),"%Y%m%d",原创 2016-03-17 16:43:50 · 1064 阅读 · 0 评论 -
socket传输文件 写文件的时候需要注意的
//读取8.mp3文件(269,260 字节)写到1.mp3,分成4份,标号为1,2,3,4 写入顺序为1,3,2,4//若是写文件的时候,每次都打开再关闭,结果:文件大小正确,用UltraEdit查看二进制和原来的一致,但是听一下会发现有问题,拖到音频编辑工具上面波形也不一样#include #include using namespace std;int main () { con原创 2015-01-21 17:17:00 · 1096 阅读 · 0 评论 -
CreateThread 线程参数示例
结构体:struct Msg{ unsigned char type; short option; unsigned short totalLen; unsigned char* data;};struct ResponseProcParam{ Msg msg; void* p_socket; MsgManagement manage;};创建线程:Response原创 2015-02-03 17:59:17 · 708 阅读 · 0 评论 -
找第二小的数 ——分治思想
#includeusing namespace std;void second(int *arr,int p,int r,int &fst,int &sec){ if(p<r) { int q = (p+r)/2; int lfst,lsec,rfst,rsec; second(arr,p,q,lfst,lsec); second(arr,q+1,r,rfst,rsec)原创 2014-04-05 18:33:08 · 1239 阅读 · 1 评论 -
同时找数组里的最大最小数——分治思想
#includeusing namespace std;void maxMin(int* arr,int p,int r,int &min,int &max){ if(p<r) { int q = (p+r)/2; int lmin,lmax,rmin,rmax; maxMin(arr,p,q,lmin,lmax); maxMin(arr,q+1,r,rmin,rmax转载 2014-04-05 17:27:51 · 563 阅读 · 0 评论 -
归并排序——分治思想
#include using namespace std;void merge(int *intArray,int p,int q,int r){ int n1 = q-p+1; int n2 = r-q; int *a1 = new int[n1]; int *a2 = new int[n2]; for(int i=0;i<n1;i++) { a1[i] = intArr转载 2014-04-05 16:16:51 · 587 阅读 · 0 评论 -
C++ char数组与空串
#includeusing namespace std;int main(){ char a[8]; a[0] = '\0'; char b[8] = ""; for(int i = 0;i<8;i++) cout<<a[i]<<" "; cout<<endl; for(int j = 0;j<8;j++) cout<<b[j]<<" "; cout<<endl; i转载 2014-04-08 11:19:05 · 2453 阅读 · 0 评论 -
C++ string、char*、const char* 之间相互转换
参考:http://www.jb51.net/article/36449.htm转载 2014-07-17 02:11:16 · 689 阅读 · 0 评论 -
C++ 调用C++动态链接库dll
http://www.cppblog.com/codejie/archive/2009/09/24/97141.html转载 2014-07-16 16:42:32 · 670 阅读 · 0 评论 -
Socket 长连接 心跳包
1.如何知道谁在线? Server维护一个list就ok了(存所有人的ip,名字,在线等) 2.如何让服务器随时能找到你? 前提:内网机器如果不主动向外发起连接,外网机没法直连内网的,这也是内网机安全的原因之一吧,又因为路由器会把这个关系记录下来,但是过一段时间这个记录可能会丢失 ,所有每一个客户端每隔一定时间就会向服务器发送消息,以保证服务器可以随时找到你,这东西被转载 2014-07-18 03:47:47 · 654 阅读 · 0 评论 -
array<Byte>^ unsigned char* char* 之间的转换
array^ GetBYTECLI(unsigned char *pszName,int nStrLen) { array^ bs = gcnew array(nStrLen); for(int i = 0;i<nStrLen;i++) { bs[i] = pszName[i]; } return bs; } unsigned char* GetBYTE(array^ p原创 2014-07-07 10:05:13 · 6158 阅读 · 0 评论 -
error C2061: 语法错误 : 标识符“***” error C2146: 语法错误 : 缺少“;” C++两个类相互引用问题
参考:http://blog.youkuaiyun.com/goodlixueyong/article/details/6254703//A.h#include "B.h"class A{ int i; B* b;}; //B.hclass A;class B{ int i; A* a;}; //B.cpp#include原创 2014-09-02 21:19:47 · 1054 阅读 · 0 评论 -
Socket接收问题
//接收一条服务器返回消息shil const int MAX_BUF = 1200*2; char recvbuf[MAX_BUF]; //这一次获取的字节 char nextbuf[MAX_BUF*2]; //这一次留下的字节 char nowbuf[MAX_BUF*2]; //这一次总的字节 int iRet; //这一次获取的字节数 int nRet = 0;原创 2014-09-03 16:17:24 · 574 阅读 · 0 评论 -
C++ 获取文件的大小
long getFileLen(char* fileName){ long l,m; ifstream file (fileName,ios::in|ios::binary); l = file.tellg(); file.seekg (0, ios::end); m = file.tellg(); //13,406,741 file.close(); cout << "size转载 2014-11-19 22:06:52 · 733 阅读 · 0 评论 -
C++ Windows thread pool
参考:http://www.cnblogs.com/wz19860913/articles/1274214.htmlhttps://msdn.microsoft.com/en-us/magazine/cc163327.aspx原创 2015-01-26 10:23:11 · 882 阅读 · 0 评论 -
C++ map struct find
参考:http://stackoverflow.com/questions/9647110/using-struct-as-key-and-value-for-map-find-operation-giving-error 【参考2 Answers】示例:struct IPPOINT{ string ip; string port;};inline bool operator<转载 2015-01-27 20:33:43 · 1588 阅读 · 0 评论 -
测试协同CS模式下的客户端操作通知时间 采用协议TCP
方法1:抓取发送的数据包和接收的数据,获取时间方法2:由发送者将自己的时间作为一项数据发送给接收者方法3:采用日志,记录发送时间和接收时间#pragma once#define WIN32_LEAN_AND_MEAN#include #include#include#includeusing namespace std;class LogHelper{public:原创 2016-03-17 16:56:37 · 751 阅读 · 0 评论