C & C++
杨小乐coder
相信相信的力量,每天进步一点点
展开
-
malloc与free的问题:munmap_chunk(): invalid pointer,无效指针
include "keyyy.h"keyyy::keyyy(){ pKey=(int*)malloc(16); //之前是13}keyyy::~keyyy(){ free(pKey); 先malloc,中途又改变动态内存,在free的时候,会出错}int keycalc::mokey(const char* bdserial){ printf("class:%s\n", bdserial);// int *tmp = (int*)malloc(12); printf("%d\原创 2021-03-26 17:41:12 · 1358 阅读 · 0 评论 -
[数据结构实践项目]变态的停车场管理系统
[数据结构实践项目]变态的停车场管理系统项目简介设停车场是一个可以停放 n 辆汽车的南北方向的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端)。若车场内已停满 n 辆车,那么后来的车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须原创 2020-12-24 13:08:12 · 961 阅读 · 0 评论 -
后缀表达式或者逆波兰表达式(栈实现)
后缀表达式或者逆波兰表达式(栈实现)3!+4*2/(1-5)^2 转换成后缀表达式: 3 ! 4 2 * 1 5 - 2 ^ / +不难发现,后缀表达式完全舍弃了表达式本该有的可读性,但有失必有得,相比普通表达式,后缀表达式的值可以轻松借助栈存储结构求得。具体求值的过程是:当用户给定一个后缀表达式时,按照从左到右的顺序依次扫描表达式中的各个运算项和运算符,对它们进行如下处理:遇到运算项时,直接入栈;遇到运算符时,将位于栈顶的运算项出栈,对于 ! 运算符,取栈顶 1 个运算项;其它运算符,取栈顶 2原创 2020-12-23 16:43:09 · 226 阅读 · 0 评论 -
进制转换器(栈的方式)
进制转换器(栈的方式)转换器实例例如,用户提供了一个十进制数:10,要求将此数据以二进制形式转换,则通过进制转换器转换的最终结果应该:1010。提示:此进制转换器可以在 2-36 进制之间对数据进行任意转换。各进制中对应的数字如下表:ASCII码表中:48-57对应0-9, 65-90对应A-Z#include <stdio.h>#include <string.h>#include <math.h>int top=-1;//top变量时刻表示栈顶元素原创 2020-12-23 11:45:11 · 316 阅读 · 0 评论 -
关于wxMessageDialog和wxMessageBox使用注意
关于wxMessageDialog和wxMessageBox使用注意wxMessageDialog dialog(NULL,name+_T(" already exists, Click 'Yes' to overwrite"), _T("Question: Overwrite File or NOT"), wxYES_NO|wxICON_QUESTION,wxDefaultPosition); int aa =dialog.ShowModal(); if(aa==wxID_NO) cont原创 2020-12-17 10:55:05 · 1232 阅读 · 0 评论 -
一个比较完整的wxWidget项目
一个比较完整的wxWidget项目将shell式的PC软件,改造成扁平的wxWidget软件1. 分析shell2.理清设计思路根据界面进行编码实现代码开发中的总结1.得到system里命令的返回值2.在指定文件里的查找指定字符串,找到返回true, flag ==1 表示区分大小写, 0表示不区分3.多个控件共用一个事件函数4.wx写文件将shell式的PC软件,改造成扁平的wxWidget软件1. 分析shell当你第一次分析一个比较长的shell程序时,肯定会头晕,找不着如何下手.我是看了将近两原创 2020-09-28 09:49:42 · 544 阅读 · 0 评论 -
linux system函数是否执行成功判断方法
https://blog.csdn.net/buknow/article/details/95066138转载 2020-06-04 16:43:33 · 232 阅读 · 0 评论 -
关于ctime返回的时间字符串,不能直接用echo保存到文件的问题
关于ctime返回的时间字符串,不能直接用echo保存到文件的问题ctime返回的字符串, 在末尾有换行符 char bb[255]; time_t f_time = time(NULL); strcpy(bb,ctime(&f_time)); //ctime返回的字符串, 在末尾有换行符 int n = strlen(bb); bb[n-1] ='/0'; sprintf(s,"echo %s>a", b, bb); //若不去掉末尾的换行符,则成了,echo 字符原创 2020-05-26 17:02:00 · 326 阅读 · 0 评论 -
C的strrchr()库函数与wxWidgets的wxString wxString :: BeforeLast()函数
查找字符串在另一个字符串中最后一次出现的位置—— C语言的sttr和wxWidgets的beforelast函数查找字符串在另一个字符串中最后一次出现的位置—— C语言的sttr和wxWidgets的beforelast函数wxWidgets的wxString的BeforeLast函数C语言的sttr查找字符串在另一个字符串中最后一次出现的位置——C语言的sttr和wxWidgets的beforelast函数)查找字符串在另一个字符串中最后一次出现原创 2020-05-22 08:50:24 · 344 阅读 · 0 评论 -
进程通信——system调用外部程序
system调用外部程序用法用法system(“路径 &”) eg: system("./print_list &") 调用当前目录下的print_list注意:加&非阻塞运行,不加阻塞运行带参数调用,输出数据 char s[255]; //字符串拼接,将调用的外部程序里的,cout部分输出到txt文件中, path ,symbol为参数 sprintf(s,"../writeData %s %x %s &", path, symbo原创 2020-05-21 07:50:49 · 866 阅读 · 0 评论 -
深入理解char , char * ,char ** ,char a[ ] ,char *a[] 的区别
深入理解char ,char * ,char ** ,char a[ ] ,char *a[] 的区别char a; 字符变量定义了一个字符变量a,只能放一个字符,长度是1。 a = “p”;char a[10]; 字符数组定义了一个字符数组,长度为10,可以存放长度为10的字符串 a[10] = {"hello "};a =&a[0]; 数组名就是数组首个元素的地址,数组又是连续的,所以打印字符串,只需printf(数组名)char * a 字符指针a = “hello原创 2020-05-21 07:50:07 · 561 阅读 · 0 评论 -
getch和ungetch的使用
getch和ungetch的使用函数说明应用场景附加——逆波兰计算器函数说明getch()这个函数可以让用户按下任意键而不需要回车就可以接受到用户的输入。可以用来作为“press any key to continue”的实现。ungetch()把一个字符退回到键盘缓冲区中工作原理ungetch( )函数是把要压回的字符放到一个共享缓冲区(字符数组)中,当该缓冲区不空时,getch函数就从缓冲区中读取字符;当缓冲区为空时,getch函数调用getchar函数直接从输入中读取字符。原创 2020-05-14 18:56:55 · 1019 阅读 · 2 评论