自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

吴英强的技术博客

专注于C/C++ 、Ios、Android、Python、Linux、ARM 、全栈工程师

  • 博客(45)
  • 资源 (10)
  • 收藏
  • 关注

原创 【C大事】第七讲:打开文件对话框及播放音乐(下)

直接上代码:switch(id)    {        case IDC_OK:        {            OPENFILENAME ofn;            char szFile[MAX_PATH];            ZeroMemory(&ofn,sizeof(ofn));            ofn.lStructSize = sizeof(

2013-08-31 14:45:05 1285

原创 爱情是什么? 婚姻是什么?

程序人生 爱情 婚姻 循环 贪婪

2013-08-26 16:38:40 3108 3

原创 【C大事】第七讲:自己动手写记事本及打开对话框的使用(上)

自己动手写记事本:switch(id){  case ID_MENUITEMOPEN:  {    FILE *fp = fopen("d:/test.txt", "r");    char line[256];    fgets(line, sizeof(line), fp);    fclose(fp);    SetDlgItemText(hwnd, ID

2013-08-19 10:06:55 2227

原创 【C大事】第六讲:定时器控件

void CALLBACK MyTimerProc (HWND hwnd, UINT message, UINT iTimerID, DWORD dwTime){  SYSTEMTIME stLocal;  GetLocalTime(&stLocal);  TCHAR strTime[256];  wsprintf(strTime,"%i年 %i月 %i日 %i:%i:%i",

2013-08-16 16:55:40 1408

原创 数据库操作

结构化查询语言Structured Query Language的分类:针对的操作对象不同,分成不同的语言。1、数据操作(管理)语言。DML 查询,或得数据 DQL 管理,增加,删除,修改数据 DML2、数据定义语言(对保存数据的格式进行定义)DDL3、数据库控制语言(针对数据库软件服务进行操作)DCL 创建数据库:create database db_name【数据库选项】Tip

2013-08-09 11:31:55 1246

原创 LAMP之安装php

1、查看之前是否安装php$rpm -qa | grep php2、如果安装过,先删除,$rpm -e php --nodeps3、解压$tar -zxvf php-5.2.5.tar.gz $cd php-5.2.5之后对php源码包进行编译:$./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bi

2013-08-09 11:31:51 1233

原创 【C大事】第五讲 组合框控件,下拉列表

获得组合框控件的句柄HWND hwndCombo1 = GetDlgItem(hwnd, IDC_COMBO1);确定目前选项的索引 int curSel = ComboBox_GetCurSel(hwndCombo1);删除项 ComboBox_DeleteString(hwndCombo1, 2);取得有多少项int getCount = ComboBox_GetCount(hwn

2013-08-09 11:31:49 1926

原创 LAMP之安装Apache

1、检测之前是否安装过apache$rpm -qa |grep httpd如果有的话,需要删除$rpm -e httpd强制卸载$rpm -e https --nodepsservice httpd status2、解压$tar -zxvf httpd-2.2.113、对源代码进行编译$./configure --prefix==/usr/local/apache --enable-so将

2013-08-09 11:31:47 1169

原创 LAMP之安装Mysql

在linux下安装软件,首先我们要确定,这个软件是否安装过。$rpm -qa | grep mysql$rpm -e mysql --nodeps删除包,不需要依赖关系$rpm -e mysql-server$tar -zxvf mysql-stand******.tar.gz$cp -vRp mysql-stand****.tar.gz /usr/local/mysql$cd /us

2013-08-09 11:31:44 1063

原创 Linux网络配置详解

搭建LAMP的形式分为:   ①:rpm---->系统自带的软件(二进制软件包)   ②:.tar.gz----> 源码的压缩文件 配置网络信息:/etc/sysconfig/network-scripts/ifcfg-eth0这个文件属于计算机第一块网卡的配置文件DEVICE:设备ONBOOT:系统启动时是否自动启用网卡,一般情况设置为yesBOOTPROTO:表示获取ip方

2013-08-09 11:31:42 1360

原创 【C大事】第四讲:重复代码封装函数的思想

将重复代码抽象成函数:判断一段字符串是否为合法的。小技巧:把字符串转为整数后,在将其转为字符串,判断是否为源字符串。vc中可以,拿到c语言中就不适合了。 BOOL IsInt(TCHAR* str){  int i = atoi(str);  TCHAR strtmp[256];  wsprintf(strtmp, "%i", i);  if(strcmp(st

2013-08-09 11:31:40 1566

原创 返回局部变量的地址

我们可能会经常写出这样的代码:int  add(int  a , int  b){   return  a + b;}当然,这是合理的写法,使函数的返回值为 int ,所以,调用函数后会返回一个int型的值。今天,我想讨论的问题当然不是这个,请看下面这段代码:char* Func_1(void){   char str[30] = "Bruce";   cout   return str;

2013-08-09 11:31:38 1814

原创 Mysql简介及概念

关系型数据库系统:建立在关系模型上的数据库系统。关系模型:当将日常生活中的实体(学生),和实体的属性(学生的学号,姓名)保存数据中时,该如何处理该实体结构。1、数据结构可以规定,同类结构,结构一致。就是一个二维表格,有行有列。2、数据之间的关系可以设置关系型数据库的典型概念:数据库:数据的仓库。表:数据是保存在表内的,保存在一个表内的数据,应该具有相同的数据结构。行&列:行:用于记录数据,

2013-08-09 11:31:36 3592

原创 【C大事】第三讲文本框内容的交互

获取对话框内容GetDlgItemText(hwnd,IDC_EDITNAME,name, sizeof(name) );打印到字符串中,相当于c#,java中的字符串相加name+“你好”wsprintf(msg,"%shello",name);设置对话框内容SetDlgItemText(hwnd,IDC_EDITNAME,"wyqiang");1、数字 2、用来存储的字符串 3、进

2013-08-09 11:31:33 982

原创 文件权限

ls -l/-amkdir -p递归创建 -m指定权限mkdir -m 666 /root/mytestrmdirtouchrmcp -R 递归复制,复制文件夹 -p 保持文件原有属性 -v 显示列表cp -vRp /root/test.txt /tmp/.mvwc 文件统计 -c:统计字符 -l:统计行数 -w:统计单词grep 查找

2013-08-09 11:31:31 998

原创 C语言内存分析

程序一:char* toStr() { char *s = "abcdefghijkl"; return s;}int main(){ cout endl; return 0;}程序二:char* toStr() { char s[] = "abcdefghijkl"; return s;}i

2013-08-09 11:31:29 1364

原创 【C大事】第二讲:对话框程序

选中图片控件,要点击边缘。菜单资源制作好菜单资源后,在对话框的Menu属性中选择刚才制作好的对话框。子菜单项(选中【弹出】)、快捷键(在要担当快捷键的字母前加&)、分隔符(勾选分隔符)

2013-08-09 11:31:27 1288

原创 赋予普通用户特殊权限

例如:只给某个用户,关机的权限。/etc/sudoers保存的是普通用户可以执行特殊权限的信息Visudo : 编辑/etc/sudoers文件sudo 某命令 表示以超级用户身份执行命令$visudo /etc/sudoers利用visudo编辑此文件,普通vi打开为只读,不能编辑 user1 localhost=/usr/sbin/useradd user2 localhost

2013-08-09 11:31:24 1192

原创 批量添加用户

总结为4个步骤:1、需要添加的用户,先存放到【用户文件】中2、真实密码保存在shadow里,/etc/passwd中为占位符,现在将shadow中的密码写到passwd中,此时passwd中保存的为真实密码。3、【密码文件】写到passwd中4、用户配置文件里的密码再写回shadow中编辑用户文件 用户文件的格式必须和/etc/passwd文件的格式相同 vi user.txt

2013-08-09 11:31:22 1212

原创 各种数据库间的比较及选择

oracle数据库的选用原则:

2013-08-09 11:31:20 1561 1

原创 【C大事】第一讲:你是好人么?MessageBox()

MessageBox(NULL,TEXT("世界你好"), TEXT("问好"),MB_OK);MB_YESNOMB_YESNOCANCELMB_RETRYCANCEL图标MB_ICONHAND红叉MB_ICONQUESTION问号MB_ICONEXCLAMATION警告MB_ICONASTERISK感叹号恶搞程序:// lianxi01.cpp :

2013-08-09 11:31:18 1289

原创 句柄

??????windows???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I/O???????????? ???windows??????????

2013-08-09 11:31:16 1103

原创 指针与字符串:(const)char *p2 = "lmj";定义的是一个字符串常量!符串常量,正因为是常量,所以它内部的字符是不允许修改的。

int main(){   char *p2 = "lmj";   *p2 = 'L';   printf("%s", p2);  return 0;}程序运行结果:段错误看起来似乎是可行的,但这是错误代码,错在第2行。首先看第1行,指针变量p2指向的是一块字符串常量,正因为是常量,所以它内部的字符是不允许修改的。有人可能搞蒙了,这里的第1行代码char *p2 = "

2013-08-09 11:31:13 1476

原创 Linux的用户和组管理

/etc/group系统里所有的组信息配置文件第一列:表示组名第二列:组密码 X表示占位,真正的密码在gshadow里第三列:组号 组号0表示root组,1--499属于系统组,500以后的属于用户组。第四列:组内用户列表/etc/group文件里的每一行都对应系统里的一个组/etc/gshadow组密码配置文件/etc/passwd用户配置文件此文件里的每一行

2013-08-09 11:31:11 1241

原创 应该知道的c知识点

1、strlen():计算的是字符数,不包含‘\0’。一个中文占3个字符2、'\0'是一个ASCII码值为0的字符3、char *p;  *p = 10;这是错误的做法,应该在指针确定指向的变量后,再进行相应的操作。4、grub-md5-crypt xxx  生成md5密码

2013-08-09 11:31:09 1183

原创 安装vi软件

两种方法:一、使用图形化二、使用命令1、查询系统中所有安装过的并且包含vi字段的软件包  rmp -qa | grep vi2、挂载安装光盘  mount /media/cdrom 命令3、安装软件  cd /media/cdrom/RedHat/RPMS/中找到vi的rpm安装包  rpm -ivh vim***.rpm安装软件4、rpm -e vim-e

2013-08-09 11:31:07 1182

原创 android adb push 与 adb install的比较

Android 应用程序有两种安装方法:1. 将应用程序的apk文件push到手机中,用如下命令:   adb push xxxx.apk /system/app.2. 用adb install xxxx.apk进行安装 二者的比较以及注意事项:  1) 用第一种方式的弊端:         a.   会将原来系统中的对应的apk覆盖掉,所以,最好先备份出来一份,用

2013-08-09 11:31:05 1197

原创 积分墙

“积分墙”是除“广告条”、“插播广告”外,第三方移动广告平台有米广告提供给应用开发者的另一新型移动广告盈利模式。“积分墙”是在一个应用内展示各种积分任务(下载安装推荐的优质应用、注册、填表等),以供用户完成任务获得积分的页面。用户在嵌入积分墙的应用内完成任务,该应用的开发者就能得到相应的收入。有米积分墙支持Android和iOS平台。  积分墙上支持三种广告模式  a.使用积分

2013-08-09 11:31:02 2427

原创 html文件中引入css代码

csstest.html css1.html 第一个图片  csstest.css /*.style1就是类选择器*/.style1{font-weight:bold;font-size:20px;background-color: pink;}/*#style2就是一个id选择器*/#style2{font-size:30px;backgrou

2013-08-09 11:31:00 1586

原创 html文件中引入js代码

my.htmlhtml>head>script language="javascript" type="text/javascript" src=“myfuns.js">/scritp>script language="javascript" type="/text/javascript"> var num1 = window.prompt('请输入第一个数

2013-08-09 11:30:58 1753 1

原创 3个重要的配置文件

/etc/grub.conf---->/boot/grub/grub.conf引导装载系统default:默认启动那个操作系统,0为第一个 /ect/fstab挂载文件系统 /etc/inittab选择登陆界面(图形、字符)运行级别:计算机操作系统本身的状态0-63:字符界面5:图形界面单用户破解密码:  前提:安装系统的时候,引导装

2013-08-09 11:30:56 1029

原创 android java.lang.UnsatisfiedLinkError: 分析及解决方法

产生此类异常主要有两种原因: 一, jni还没有编译 是一边编译一边用的 这要分两种情况:  第一种是UnsatisfiedlinkError:dll名称。说明dll没有放到合适的位置。对于Android开发,我们一般把so放在 libs目录下,但是还是会出现这个错误。根本原因System.loadLibrary函数会加载你指定的so,该so中需要链接的所有符号都需要能够链接到,如

2013-08-09 11:30:53 1673

原创 什么是网站开发?

以前还有学生问起过“现在网上那么多免费的网上商城系统可以下载使用,那还要程序员干什么?”之类的问题,其实本质上那就是“什么是网站开发?” 要解答这个问题也要搞清楚“网站运营”、 “网站设计”、“网站开发”之间的区别。      “网站运营”指的是熟悉某项业务的人开办一个网站,然后经营这个网站利用这个网站盈利的过程。比如有的人对服装行业特别熟悉,就创办一个在线卖服装的网站;有的人爱好汽车

2013-08-09 11:30:51 2031

原创 Android软件架构及子系统介绍

2013-08-09 11:30:49 2587

原创 js中的||(或)运算究竟返回什么?

测试: var a = 2; var b = 0; var c = a || b; window.alert(c);//输出2 var a = ""; var b = false; var d = 0; var c = a || b || d; window.alert(c);//输出0结论:在js中||(或)将返回第一个不为false的那个值(可以是对象),         

2013-08-09 11:30:47 1681

原创 C编写的调试宏

>#ifndef _DEBUG_H_#define _DEBUG_H_#include #include #include #define ERRBUFLEN 1024#ifdef DEBUG_ON#define ERR_PRINT(str) \   do \   { \   char errbuf[ERRBUFLEN] = { '\0' }; \   snprin

2013-08-09 11:30:45 1563

原创 指针的疑问

1.一个指针变量占用多少个字节的内存空间?占用的空间是否会跟随所指向变量的类型而改变?在同一种编译器环境下,一个指针变量所占用的内存空间是固定的。比如,在16位编译器环境下,任何一个指针变量都只占用2个字节,并不会随所指向变量的类型而改变。2.既然每个指针变量所占用的内存空间是一样的,而且存储的都是地址,为何指针变量还要分类型?而且只能指向一种类型的变量?比如指向int类型的指针、

2013-08-09 11:30:42 1465

原创 CPU位数、操作系统位数和编译器位数关系

编译器是将一种语言翻译为另一种语言的计算机程序。编译器将源程序(source language) 编写的程序作为输入,而产生用目标语言(target language )编写的等价程序。通常地,源程序为高级语言(high-level language ),如C或C + + ,而目标语言则是目标机器的目标代码 (object code,有时也称作机器代码(machine code )),也就是写在计

2013-08-09 11:30:40 1669

原创 C语言atoi()和itoa()函数的实现

字符串转换为整数:int myatoi(char *src){   char flag = 0;   int sum = 0;   int i = 0;   int len = strlen(src);   if ( NULL == src){   return 0;   }   if ( src[i] == '-'){   flag = '-';   ++i;   }   for

2013-08-09 11:30:38 1575

原创 LAMP的解释

LAMP指的Linux(操作系统)、ApacheHTTP 服务器,MySQL(数据库软件) 和PHP(有时也是指Perl或Python) 的第一个字母,一般用来建立web 服务器。  Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web

2013-08-09 11:30:36 1387 1

Win32编程基础

win32编程基础知识,点滴积累。

2016-08-12

黑马android学习笔记

本文档是根据黑马程序员28期android课程学习视频,进行同步整理。 欢迎进行交流学习。

2016-04-20

C++学院讲义

本文档是根据传智播客C++学院视频教程,进行学习整理。

2015-09-09

跨平台的socket库,windows-linux-socket

跨平台的socket库,windows-linux-socket

2015-06-10

cocos2dx实现的2048

使用cocos引擎,c++实践--2048v1.0。

2015-04-07

网络编程--实现跨平台传输文件(TCP版)

网络编程--实现跨平台传输文件(TCP版)

2015-03-31

c++学习笔记

c++学习笔记,达内科技,陈宗权老师所讲的7天课程。

2014-05-09

河北空气质量客户端,安卓版

安卓程序示例.保存代码,待研究。 自己实现,安装到开发板上。

2014-02-13

linux 字符设备驱动程序 示例代码

linux字符设备驱动程序,示例代码。 共8个文件。包括内核态的驱动程序和用户态的测试例程。

2013-11-28

android jni接口方法

android jni接口方法调用 以及hal层封装接口定义

2013-05-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除