
编程日记
gongzhxu
喜欢编程
展开
-
mysql修改密码
1.启动mysqlmysqld_safe --skip-grant-tables2.清空mysql密码# mysql -u rootmysql> use mysql;mysql> update user set authentication_string='' where user='root';mysql> select Host,User,authentication_string from user;mysql> flush privilege.原创 2020-09-22 12:58:19 · 266 阅读 · 0 评论 -
CMAKE使用一些技巧
1.动态库去掉前缀SET(CMAKE_SHARED_LIBRARY_PREFIX "")2.去掉RPATHSET(CMAKE_SKIP_BUILD_RPATH TRUE)原创 2018-03-31 14:00:07 · 709 阅读 · 0 评论 -
判断两单链表是否相交
#include struct Node{ int data; struct Node * next;};struct Node * FindLoopPort(struct Node * head){ struct Node * slow = head, *fast = head; while(fast && fast->next ) {原创 2017-10-30 09:56:50 · 320 阅读 · 0 评论 -
tcp自连接
#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>#include <string>#include <stdio.h>int main(){ int sockfd = sock...原创 2018-09-11 11:08:15 · 290 阅读 · 0 评论 -
UDP广播
1.服务器代码#include #include #include #include #include int main(){ int sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); if(sockfd == -1) { printf("create socket failed.\n")原创 2017-07-18 14:46:17 · 353 阅读 · 0 评论 -
24点解法
#include #include #include class fraction{public: fraction(int numerator, int denominator = 1) { if(numerator%denominator == 0) { numerator_ = numerator/denom原创 2017-06-20 10:29:37 · 595 阅读 · 0 评论 -
关于文件的打开方式(字节流和二进制流)
今天想起一个恶作剧的程序,便动手写了起了。起初我觉得是挺简单的。之后便发现没那么简单。本来就是一个文件拷贝的事情,但我要将文件存储的二进制文件中,而且文件还不小。问题首先来了,不过简单,写一个辅助程序将文件转换成十六进制的字符串这个简单马上就写成了。由于文件过大之后,必须修改 Zm 编译选项才能通过编译。但接下来问题又出现了,拷贝后的文件比原来大好多,这是为什么原创 2012-03-21 20:54:02 · 3914 阅读 · 0 评论 -
关于共用体--union
不解释#include union test{ float f; int i; char c; }a;void main(){ a.i = 97; printf("%d\n", a);//97 printf("%d\n", a.i);//97 printf("%c\n", a.c);//a printf("%f\n\n", a.f);//0.000000原创 2012-03-20 21:05:35 · 620 阅读 · 0 评论 -
纯虚函数之析构函数
纯虚函数可以有函数体(可以有但最好不要加)。当基类析构函数为纯虚函数时,必须显示加上函数体。#include using namespace std;class Base{public: virtual void print() =0; virtual void print1() = 0 { cout<< "Base print1" <<endl; } virtual原创 2012-03-20 21:23:33 · 2953 阅读 · 0 评论 -
编程遇到小问题0
今天写一个程序突然出现编译错误,不知为何,最后才明白.#include #include #define szName TEXT("ProcessName")int GetProcessIdFromName(LPTSTR szName){ printf(szName); return NULL;}void main(){ GetProcessFromName(sz原创 2012-03-16 15:42:37 · 572 阅读 · 0 评论 -
算法--求0到N中所有1的个数
代码如下:#include #include using namespace std;#define N 11void GetAllBit(int x, int& len, int bit[]){ len = 0; bit[len] = x % 10; while( x ) { x = x / 10; bit[++len] = x % 10; }}int Ge原创 2012-03-12 15:23:08 · 632 阅读 · 0 评论 -
特殊数据获取
今天突然想了一下怎么得到最大的整数(int类型),原来如此简单:~(~0其他长度数据也是一样,无符号数更简单。但float,double类型不能进行>运算。原创 2012-03-02 20:59:33 · 607 阅读 · 0 评论 -
简单的测试程序
#include class parent{public:virtual void print1(){coutprint();}void print(){cout// print1();}};class child:public parent{public:virtual void print1原创 2011-11-04 22:11:55 · 614 阅读 · 0 评论 -
饰面(veneer)
饰面是基类参数化的一个应用,例子#include using namespace std;templateclass AbstractClass: public T{ public: static void TemplateMethod() { AbstractClass::F1(); AbstractClass::F2(); }};class Concr原创 2012-05-16 14:36:37 · 756 阅读 · 0 评论 -
程序运行些writeinfo
void writeinfo(uint32_t id, const char * hostname){ uint32_t curPid; curPid = getpid(); std::vector strMsgs; { std::string strMsg; base::sprintfex(strMsg, "%s - pid=%d,原创 2017-03-15 11:26:07 · 1081 阅读 · 0 评论 -
联系人名称排序
#include #include #include using namespace std;class Name{public: Name(const std::string & name):_name(name) { } const char * data() const { return _name.c_str();原创 2017-03-07 13:58:03 · 669 阅读 · 0 评论 -
联系人名称排序
#include #include #include using namespace std;class Name{public: Name(const std::string & name):_name(name) { } const char * data() const { return _name.c_str();原创 2017-03-07 11:06:32 · 703 阅读 · 0 评论 -
有符号和无符号导致的问题
前言写程序的可能会经常碰到一些奇怪的问题,表面上看真是发现不了一点问题。其实可以检查一下是否是类型有符号和无符号导致的问题。有符号的0-1=-1,无符号的0-1可就不是等于1,这个问题大家都知道,一到实际应用起来,往往就忽略了这个差别。下面列举一些自己写程序遇到的这个问题,仅供个人编程的一个警钟。1. 下面是一个有问题的程序,请有兴趣的同志更正template size_t原创 2013-07-01 16:35:05 · 782 阅读 · 0 评论 -
thunk示例代码
了解了一下thunk,怎么感觉好像写shellcode,但觉得比较好玩,自己也写了一个示例程序,跟实际的thunk有点区别,供自己参考#include #include #include #pragma pack(push,1) struct Thunk{ BYTE m_nop; BYTE m_push; DWORD m_fun; BYTE m_push4;原创 2013-01-16 15:23:07 · 766 阅读 · 0 评论 -
Ado使用PutCollect更改记录Update时出错
问题: 使用ado更新access数据抛出“未指定数据异常”1,使用Update更新一些特殊变量时一出现问题(像Date/Time)2,写法CString sSql = _T("SELECT 需要的字段 FROM clientUser WHERE clientUser.sChls='") + sChl + _T("';");_RecordsetPtr prst;原创 2012-12-26 16:53:12 · 5101 阅读 · 3 评论 -
关于引用
书上关于引用的要点的理解:1.引用既不是对被引用变量的简单复制,也不是指向被引用变量的指针,而是被引用变量的另一个名字,在定义时必须被初始化,并且初始化的值不能是常量。可以是常量,代码如下: const int &r = 15;2.引用一旦初始化后,就与初始化他的变量绑定在一起,占用相同的内存空间,所以引用变量的值改变时,原来的变量值也改变。 (这句话我也理解)3.原创 2012-03-02 22:01:34 · 791 阅读 · 0 评论