精华内容
下载资源
问答
  • 上次发帖,人们都说不能用MFC。那是否可以用纯API从头开始,像这样:WNDCLASS RegisterClass CreateWindow GetMessage。。。。。。。这个套路可以吗 我学的是C++、MFC,有没有什么方法可以尽量不学其他语言的
  • 程序是可以自定义入口的,但是如果在入口中使用了一些CRT相关的函数,而没有正确的进行初始化工作的话,即使编译不出问题,在运行时也会出现内存错误等问题的。那我们可以写出完全不用到CRT库的程序吗?当然可以,...

    从前面几篇,我们已经得到一些结论。

    程序是可以自定义入口的,但是如果在入口中使用了一些CRT相关的函数,而没有正确的进行初始化工作的话,即使编译不出问题,在运行时也会出现内存错误等问题的。

    那我们可以写出完全不用到CRT库的程序吗?当然可以,既然CRT库也是微软写的,甚至我们可以用另外一个CRT库来代替它。不过这个算是另外一个话题了。先看看不使用CRT库的hello world是啥样的吧。

    不使用C运行时库的测试代码

    #include

    DWORD StringLen(const char * str)

    {

    const char *eos = str;

    while( *eos++ ) ;

    return( (DWORD)(eos - str - 1) );

    }

    void WriteString(const char * str)

    {

    HANDLE hOut;

    DWORD Length;

    DWORD result;

    hOut=GetStdHandle(STD_OUTPUT_HANDLE);

    Length=StringLen(str);

    WriteFile(hOut,str,Length,&result,0);

    }

    int myentry(void)

    {

    WriteString("Hello World!");

    ExitProcess(0);

    return 0;

    }

    编译:

    cl /c /Zl myentrytest.c

    链接:

    link /entry:myentry /subsystem:console myentrytest.obj kernel32.lib

    最终得到可执行文件myentrytest.exe。

    执行效果与printf出来的效果相同,但是其中用到的原理却是很不一样的。

    这里,我们就接触到了三个函数,这三个函数可以不通过CRT库直接使用,并且不造成任何问题,这三个函数都是所谓的Windows API。这三个API都是kernel32提供的。通过直接调用windows API,可以使用到操作系统的功能,并成功绕过CRT库。尽管我们平时不太会使用到这样的技巧,但是有时接触到这样的代码或自己编码时有这样的要求,也是可能的。当然,要完全绕过CRT库,就需要提取出所编写程序要使用到CRT库提供功能的所有函数,并使用windows API来同等代替,这样花费的时间和重复做轮子也没什么两样,不过,如果要真的对系统有一定了解,还是有一定意义的。

    这里介绍一下windows API:

    视窗操作系统应用程序接口(Windows API),有非正式的简称法为WinAPI,是微软对于Windows操作系统中可用的核心应用程序编程接口的称法。它被设计为各种语言的程序调用,也是应用软件与Windows系统最直接的交互方式。大多数驱动程序所需要的对Windows系统的更底层次访问接口,由所用版本的Windows的Native API来提供接口。

    Windows有一个软件开发包(SDK, software development kit)提供相应的文档和工具,以使程序员开发使用Windows API的软件和利用Windows技术。

    Windows API所提供的功能可以归为七类:

    基础服务(Base Services)文件系统(file system)、外部设备(device)、,行程(process)、线程(thread)以及访问注册表(Windows registry)和错误处理机制(error handling)。这些功能接口位于,16位元Windows下的kernel.exe、krnl286.exe或krnl386.exe系统文件中;以及32位元Windows下的 kernel32.dll和advapi32.dll中。

    图形设备接口(GDI)显示器、打印机以及其他外部输出设备。它位于16位元Windows下的gdi.exe;以及32位元Windows下的gdi32.dll。

    图形化用户界面(GUI)按钮和滚动条。接收鼠标和键盘输入,以及其他与GUI有关的功能。这些调用接口位于:16位元Windows下的user.exe,以及32位元Windows下的user32.dll。从Windows XP版本之后,基本控件和通用对话框控件(Common Control Library)的调用接口放在comctl32.dll中。

    通用对话框链接库(Common Dialog Box Library)commdlg.dll中,以及32位元Windows下comdlg32.dll中。它被归类为User Interface API之下。

    通用控件链接库(Common Control Library)状态栏(status bar)、进度条(progress bars)、工具栏(toolbar)和标签(tab)。这个链接库位于:16位元Windows下的commctrl.dll中,以及32位元Windows下comctl32.dll中。。它被归类为User Interface API之下。

    Windows外壳(Windows Shell)操作系统shell提供的功能,还对之有所改进和增强。它位于16位元Windows下的shell.dll中,以及32位元Windows下的shell32.dll中(Windows 95则在 shlwapi.dll中)。 它被归类为User Interface API之下。

    网络服务(Network Services)网络 功能提供接口。它包括NetBIOS、Winsock、NetDDE及RPC等。

    这里,暂时就这么多了,你,见过自定义入口的程序吗?可以拿出来和大家共享吗?

    参考:

    展开全文
  • Windows Sockets网络编程》是WindowsSockets网络编程领域公认的经典著作,由Windows Sockets2.0规范解释小组负责人亲自执笔,权威性毋庸置疑。它结合大量示例,对WindowsSockets规范进行了深刻地解读,系统讲解了...
  • 其实,不只是iPad,手机也可以。痛点我组织过几次线下编程工作坊,带着同学们用Python处理数据科学问题。...还拿到学生的Windows 7上跑,也没有问题。这才上传到了Github。在发布的教程文章里,我也已经把安装...

    其实,不只是iPad,手机也可以。

    痛点

    我组织过几次线下编程工作坊,带着同学们用Python处理数据科学问题。

    其中最让人头疼的,就是运行环境的安装。

    实事求是地讲,参加工作坊之前,我已经做了认真准备。

    例如集成环境,选用了对用户很友好的Anaconda。

    代码在我的Macbook电脑上跑,没有问题。还拿到学生的Windows 7上跑,也没有问题。这才上传到了Github。

    在发布的教程文章里,我也已经把安装软件包的说明写得非常详细。

    o4YBAFr9OqCAfKCuAABYQrjJdXw667.jpg

    还针对 Anaconda 这一 Python 运行环境的安装和运行,专门录制了视频。

    o4YBAFr9OqCAFYlkAABixNd0MLA383.jpg

    但是,工作坊现场遇见的问题,依然五花八门。

    有的是操作系统。例如你可能用Windows 10。实话实说,我确实没用过。拿着Surface端详,连安装后的Anaconda文件夹都找不到在哪儿。

    有的是编码。不同操作系统,有的默认中文编码是UTF-8,有的是GBK。同样一段中文文本,我这里显示一切正常,你那里就是乱码。

    有的是套件路径。来参加工作坊前,你可能看过我一些教程,并安装了 Python 2.7 版本 Anaconda。来到现场,一看需要 Python 3.6 版本,你就又安装了一份新的。结果执行起来,你根本分不清运行的 Python, pip 命令来自哪一个套件,更搞不清楚软件包究竟安装到哪里去了。再加上虚拟环境配置,你就要抓狂了。

    还有的,甚至是网络拥塞问题。因为有时需要现场安装调用体积庞大的软件包,几十台电脑“预备——齐”一起争抢有限的Wifi带宽,后果可想而知。

    痛定思痛,我决定改变一下现状。

    目前的教程只提供基础源代码。对于许多新手同学来说,是不够的。

    许多同学,就倒在了安装依赖软件包的路上,继而干脆放弃了。

    变通的办法有许多。例如干脆录制代码执行视频给你看。

    但是正如我在《MOOC教学,什么最重要?》一文中说过的,学习过程里,反馈最重要。

    你需要能运行代码,并且第一时间获得结果反馈。

    在此基础上,你还得能修改代码,对比前后执行结果的差别。

    我得给你提供一个直接可以运行的环境。

    零安装,自然也就没了上述烦恼。

    这个事儿可能吗?

    我研究了一下,没问题。

    只要你的设备上有个现代化浏览器(包括但不限于Google Chrome, Firefox, Safari和Microsoft Edge等)就行。

    IE 8.0?

    那个不行,赶紧升级吧!

    读到这里,你应该想明白了。因为只挑浏览器,不挑操作系统,所以别说你用Windows 10,你就是用iPad,都能运行代码。

    尝试

    请你打开浏览器,输入这个链接(http://t.cn/R35fElv)。

    看看会发生什么?

    我这里用iPad给你演示。

    一开始会有个启动界面出来。请你稍等10几秒钟。

    o4YBAFr9OqGAeX7GAAB5EUIjuMo555.jpg

    然后,你就能看到熟悉的Python代码运行界面了。

    o4YBAFr9OqGAf-4lAAC452qmCRQ059.jpg

    这个界面来自 Jupyter Lab。

    你可以将它理解为 Jupyter Notebook 的增强版,它具备以下特征:

    代码单元直接鼠标拖动;

    一个浏览器标签,可打开多个Notebook,而且分别使用不同的Kernel;

    提供实时渲染的Markdown编辑器;

    完整的文件浏览器;

    CSV数据文件快速浏览

    ……

    图中左侧分栏,是工作目录下的全部文件。

    右侧打开的,是咱们要使用的ipynb文件。

    为了证明这不是逗你玩儿,请你点击右侧代码上方工具栏的运行按钮。

    点击一下,就会运行出当前所在代码单元的结果。

    不断点击下来,你可以看见,结果都被正常渲染。

    o4YBAFr9OqGAOWXGAADYGW0YpwU276.jpg

    连图像也能正常显示。

    o4YBAFr9OqKAWR63AADDt05CiQA910.jpg

    甚至连下面这种需要一定运算量的可视化结果,都没问题。

    o4YBAFr9OqKAcI5hAAChJ0an8zQ331.jpg

    为了证明这不是变魔术,你可以在新的单元格,写一行输出语句。

    就让Python输出你的名字吧。

    假如你叫 Chuck,就这样写:

    print(“Hello, Chuck!”)

    把它替换成你自己的姓名,看看输出结果是否正确?

    o4YBAFr9OqKAI1cjAACeWx9WxF4743.jpg

    其实,又何止是iPad而已?

    你如果足够勇(sang) 于(xin) 尝(bing) 试(kuang),手机其实也是可以的。

    就像这样。

    o4YBAFr9OqKANBOzAACfF9rHVpw853.jpg

    流程

    下面我给你讲讲,这种效果是怎么做出来的。

    我们需要用到一款工具,叫做 mybinder 。它可以帮助我们,把 github 上的某个代码仓库(repo),快速转换成为一个可运行的环境。

    注意 mybinder 为我们提供了云设施,也就是计算资源和存储资源。因此即便许许多多的用户同时在线使用同一份代码转换出来的环境,也不会互相冲突。

    我们先来看看,怎么准备一个可供 mybinder 顺利转换的代码仓库。

    我为你提供的样例在这里(http://t.cn/R35MEqk):

    o4YBAFr9OqOAKNjhAACR7Xp4Fjw139.jpg

    顺便说一句,这个样例来自于我的数据科学系列教程之《如何用Python处理自然语言?(Spacy与Word Embedding)》。感兴趣的同学可以点击链接,查看原文。

    在该 GitHub 页面展示的文件列表中,你需要注意以下3个文件:

    demo.ipynb

    environment.yml

    postBuild

    其中demo.ipynb就是你在上一节看到的包含源代码的Jupyter Notebook文件。你需要首先在本地安装相关软件包,并且运行测试通过。

    如果在你本地运行都有错误,放到云上去,想必也难以正常运行。

    environment.yml文件非常重要,它来告诉 mybinder ,需要如何为你的代码运行准备环境。

    我们打开看看该文件的内容:

    dependencies: - python=3 - pip: - spacy - ipykernel - scipy - numpy - scikit-learn - matplotlib - pandas - thinc

    这个文件首先告诉 mybinder ,你的 Python 版本。我们采用的是 3.6 版。所以只需要指定 python=3 即可。mybinder 会自动为你下载安装最新的。

    然后这个文件说明需要使用 pip 工具安装哪些软件包。我们需要把所有依赖的安装包都罗列出来。

    这就是之前,我总在教程里给你说明的那些准备步骤。

    但是这还没有完,因为 mybinder 只是为你安装好了一些软件依赖。

    这里还有两个步骤需要处理:

    为了分析语义,我们需要调用预训练的Word2vec模型,这需要 mybinder 为我们提前下载好。

    Jupyter Notebook 打开后,应当使用的 kernel 名称为 wangshuyi ,这个 kernel 目前还没有在 Jupyter 里面注册。我们需要 mybinder 代劳。

    为了完成上述两个步骤,你就需要准备最后一个postBuild文件。

    它的内容如下:

    python -m spacy download en python -m spacy download en_core_web_lg python -m ipykernel install --user --name=wangshuyi

    跟它的名字一样。它是在 mybinder 依据 environment.yml 安装了依赖组建后,依次执行的命令。如果你的代码需要其他的命令提供环境支持,也可以放在这里。

    至此,你的准备工作就算结束了。

    魔法表演正式开始。

    请打开 mybinder 的网址(https://mybinder.org/)。

    o4YBAFr9OqOAfLnhAAB0Mo8-LRQ276.jpg

    在 “GitHub repo or URL” 一栏,填写我们的 github 代码仓库链接,即:

    https://github.com/wshuyi/demo-spacy-text-processing

    我们希望一进入界面,就自动打开 demo.ipynb ,因此需要在“Path to a notebook file (optional)”一栏填写demo.ipynb 。

    这时,你会发现“Copy the URL below and share your Binder with others:”一栏中,出现了你的代码运行环境网址。

    https://mybinder.org/v2/gh/wshuyi/demo-spacy-text-processing/master?filepath=demo.ipynb

    点击右侧的“复制”按钮保存到你的记事本里面。将来找到你转换好的运行环境,就全靠它了。

    妥善保存地址后,点击“Launch”按钮。

    o4YBAFr9OqOAPF8qAABwlEJOdGU580.jpg

    根据你的依赖安装包数量等因素,你需要等待的时间长短不一。但是只有第一次构建的时候,需要花一些时间。

    以后每一次调用执行,就都会非常快了。

    构建完毕后, mybinder 会自动为我们开启对应的运行环境。

    o4YBAFr9Oq2AT0SLAACF2y-1xLo533.jpg

    很有成就感吧!

    测试一下,能够正常运行代码,就证明我们成功了。

    但是你会发现,不对啊!

    老师你刚才用 iPad 展示的,不是高级版的 Jupyter Lab 吗?怎么又变成了 Jupyter Notebook 了?

    我也想要高级版!

    别着急。

    看看你目前的链接地址:

    https://mybinder.org/v2/gh/wshuyi/demo-spacy-text-processing/master?filepath=demo.ipynb

    你只需要做个小小的调整,将其中的:

    ?filepath=

    替换为:

    ?urlpath=lab/tree/

    替换后的链接为:

    https://mybinder.org/v2/gh/wshuyi/demo-spacy-text-processing/master?urlpath=lab/tree/demo.ipynb

    把它输入到浏览器,看看出来的结果:

    o4YBAFr9OriAXQ46AACWV-W9oCs642.jpg

    这下没问题了吧?

    原理

    你是不是觉得,mybinder 很黑科技?

    其实,也不算。

    它只是把已有的几项技术,链接了起来。

    这大概也算是“积木式创新”的一个实例吧。

    我们看看 mybinder 的说明:

    o4YBAFr9Or2AFNpBAADojTKj-Ik136.jpg

    可以看到,其中最为关键的技术,是用了 docker 。

    Docker 是个什么东西呢?

    简单来说,Docker 就是为了不同平台上,都能够顺利执行同一份代码的保障工具。

    你有些犹疑,这说的不是 Java 吗?

    没错,Java 的宣传口号,就是一次编码,各处运行。

    它利用虚拟机,来保障这种能力。

    o4YBAFr9Or2AQz0BAABn-4MnMgE632.jpg

    但是,如果你经常使用 Java 开发出来的工具,就应该了解痛点有哪些了。

    至少,你应该对 Java 程序的运行速度,有一些体会。

    o4YBAFr9Or2AO2LcAACakWcRbDI915.jpg

    上图中,左侧是虚拟机,右侧是Docker。

    Docker 不但效率上要强过 Java 虚拟机,而且它支持的编程语言也不仅仅是一种。

    至于其他好处,咱们就不展开了。否则听起来像广告。

    其实,把 github 代码仓库转换为 docker 镜像(image)的工作,也不是 mybinder 自己来做的。

    它调用的,是另外的一个工具,叫做 repo2docker(https://github.com/jupyter/repo2docker) 。

    o4YBAFr9Or6ASyC6AACQGKmhU2A833.jpg

    而你的浏览器能够执行 Python 代码,是因为 Jupyter Notebook (或者Lab)本来就是建立在“浏览器/服务器”(Browser / Server, B/S)结构上。

    如果你已经在本地计算机安装过 Anaconda ,那不妨看看本地执行这个语句:

    jupyter lab

    会出现什么?

    o4YBAFr9Or6AYmihAAF6RmSwKVM985.jpg

    对,它开启了一个服务器,然后打开你的浏览器,跟这个服务器通讯。

    Jupyter 的这种设计,本身就让它的扩展极为方便。

    无论 Jupyter 服务器是运行在你的本地笔记本上,还是摆在另一个大洲的机房,对你执行 Python 代码来说,都是没有本质区别的。

    另外,如果你以为 mybinder 只能让你在浏览器上跑 Python 代码,那就太小瞧它了。

    展开全文
  • Great Windows 7

    2011-07-13 23:01:00
    Windows 7,打开“下载”文件夹,里面也就几十个文件…… 它非常“友好”地在地址栏部分显示一个进度条,等到进度条100%,右边文件夹内容部分编程非空白——文件显示出来,我可以去拉泡屎,再回来也不迟,我没有...

    Windows 7,打开“下载”文件夹,里面也就几十个文件……

    它非常“友好”地在地址栏部分显示一个进度条,等到进度条100%,右边文件夹内容部分编程非空白——文件显示出来,我可以去拉泡屎,再回来也不迟,我没有拉肚子,我便秘!

    这么恶心的东西,我可以不用它吗?如果网银,视频播放器有的选择!

    Ubuntu 也在发扬 Windows 的优良传统,公司的台式机硬件至少我这电脑落后3年,可是他的速度至少比 Ubuntu 快 3 倍,比 Windows 7 呢,300 倍吧!人家用的是精简版的 RedHat。

    是恐龙该灭绝的时候了!


    展开全文
  • Windows Sockets网络编程》是WindowsSockets网络编程领域公认的经典著作,由Windows Sockets2.0规范解释小组负责人亲自执笔,权威性毋庸置疑。它结合大量示例,对WindowsSockets规范进行了深刻地解读,系统讲解了...
  • 从前面几篇,我们已经得到一些结论。 程序是可以自定义入口的,...当然可以,既然CRT库也是微软写的,甚至我们可以用另外一个CRT库来代替它。不过这个算是另外一个话题了。先看看不使用CRT库的hello world是啥样的

    从前面几篇,我们已经得到一些结论。

    程序是可以自定义入口的,但是如果在入口中使用了一些CRT相关的函数,而没有正确的进行初始化工作的话,即使编译不出问题,在运行时也会出现内存错误等问题的。

    那我们可以写出完全不用到CRT库的程序吗?当然可以,既然CRT库也是微软写的,甚至我们可以用另外一个CRT库来代替它。不过这个算是另外一个话题了。先看看不使用CRT库的hello world是啥样的吧。

    不使用C运行时库的测试代码

    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    #include <windows.h>
     
    DWORD StringLen(const char * str)
    {
            const char *eos = str;
            while( *eos++ ) ;
            return( (DWORD)(eos - str - 1) );
    }
     
    void WriteString(const char * str)
    {
            HANDLE hOut;
            DWORD Length;
            DWORD result;
            hOut=GetStdHandle(STD_OUTPUT_HANDLE);
            Length=StringLen(str);
            WriteFile(hOut,str,Length,&result,0);
    }
     
    int myentry(void)
    {
            WriteString("Hello World!");
            ExitProcess(0);
            return 0;
    }

    编译:

    cl /c /Zl myentrytest.c

    链接:

    link /entry:myentry /subsystem:console myentrytest.obj kernel32.lib

    最终得到可执行文件myentrytest.exe。

    执行效果与printf出来的效果相同,但是其中用到的原理却是很不一样的。

    这里,我们就接触到了三个函数,这三个函数可以不通过CRT库直接使用,并且不造成任何问题,这三个函数都是所谓的Windows API。这三个API都是kernel32提供的。通过直接调用windows API,可以使用到操作系统的功能,并成功绕过CRT库。尽管我们平时不太会使用到这样的技巧,但是有时接触到这样的代码或自己编码时有这样的要求,也是可能的。当然,要完全绕过CRT库,就需要提取出所编写程序要使用到CRT库提供功能的所有函数,并使用windows API来同等代替,这样花费的时间和重复做轮子也没什么两样,不过,如果要真的对系统有一定了解,还是有一定意义的。

    这里介绍一下windows API:

    视窗操作系统应用程序接口(Windows API),有非正式的简称法为WinAPI,是微软对于Windows操作系统中可用的核心应用程序编程接口的称法。它被设计为各种语言的程序调用,也是应用软件与Windows系统最直接的交互方式。大多数驱动程序所需要的对Windows系统的更底层次访问接口,由所用版本的Windows的Native API来提供接口。

    Windows有一个软件开发包(SDK, software development kit)提供相应的文档和工具,以使程序员开发使用Windows API的软件和利用Windows技术。

    Windows API所提供的功能可以归为七类:[4]

    • 基础服务(Base Services)[5],提供对Windows系统可用的基础资源的访问接口。比如象:文件系统(file system)、外部设备(device)、,行程(process)、线程(thread)以及访问注册表(Windows registry)和错误处理机制(error handling)。这些功能接口位于,16位元Windows下的kernel.exekrnl286.exekrnl386.exe系统文件中;以及32位元Windows下的 kernel32.dlladvapi32.dll中。
    • 图形设备接口(GDI)[6],提供功能为:输出图形内容到显示器打印机以及其他外部输出设备。它位于16位元Windows下的gdi.exe;以及32位元Windows下的gdi32.dll
    • 图形化用户界面(GUI[7],提供的功能有创建和管理屏幕和大多数基本控件(control),比如按钮滚动条。接收鼠标键盘输入,以及其他与GUI有关的功能。这些调用接口位于:16位元Windows下的user.exe,以及32位元Windows下的user32.dll。从Windows XP版本之后,基本控件和通用对话框控件(Common Control Library)的调用接口放在comctl32.dll中。
    • 通用对话框链接库(Common Dialog Box Library)[8],为应用程序提供标准对话框,比如打开/保存文件对话框、颜色对画框和字体对话框等等。这个链接库位于:16位元Windows下的commdlg.dll中,以及32位元Windows下comdlg32.dll中。它被归类为User Interface API之下。
    • 通用控件链接库(Common Control Library)[9],为应用程序提供接口来访问操作系统提供的一些高级控件。比如像:状态栏(status bar)、进度条(progress bars)、工具栏(toolbar)和标签(tab)。这个链接库位于:16位元Windows下的commctrl.dll中,以及32位元Windows下comctl32.dll中。。它被归类为User Interface API之下。
    • Windows外壳(Windows Shell)[10][11],作为Windows API的组成部分,不仅允许应用程序访问操作系统shell提供的功能,还对之有所改进和增强。它位于16位元Windows下的shell.dll中,以及32位元Windows下的shell32.dll中(Windows 95则在 shlwapi.dll中)。 它被归类为User Interface API之下。

    这里,暂时就这么多了,你,见过自定义入口的程序吗?可以拿出来和大家共享吗?

    参考:

    1. http://zh.wikipedia.org/wiki/Windows_API
    展开全文
  • 要理解线程,首先要理解并发的概念。并发是指在同一时间点,计算机可以同时执行多个任务。当前主流的操作系统,不管是Window系统...下图是Windows 7系统任务管理器中的进程,从中可以看到当前操作系统中有多个任务同...
  • C语言编程要点

    2017-09-18 00:10:37
    7章 指针和内存分配 106 7.1. 什么是间接引用(indirection)? 107 7.2. 最多可以使用几层指针? 108 7.3. 什么是空指针? 110 7.4. 什么时候使用空指针? 110 7.5. 什么是void指针? 112 7.6. 什么时候使用void指针? ...
  • pycharm配置python环境的方法:首先指定可写的模式,代码为【f1.write('hello boy!...KfR少儿编程网-https://www.pxcodes.comKfR少儿编程网-https://www.pxcodes.com本教程操作环境:windows7系统、py...
  • 高质量C++编程指南

    2012-03-08 19:40:54
    成绩越差,可以进步的空间就越大,中国不就是在落后中赶超发达资本主义国家吗?只要你能下决心改掉不良的编程习惯,第二次考试就能及格了。 (2)如果你考及格了,表明你的技术基础不错,希望你能虚心学习、不断进步...
  • visual C++_Turbo C串口通信编程实践

    热门讨论 2010-07-30 09:14:24
    1.5体验Windows环境下Visual C++串口通信编程 1.6体验DOS环境下Turbo C串口通信编程 第2章 VC多线程串口编程工具CSerialPort类 2.1 类功能及成员函数介绍 2.2 应用CSerialPort类编制基于对话框的应用程序 2.3 ...
  • mysql从5.0版开始支持存储过程。MySQL5.0版本以前并不支持...本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。MySQL 5.0 版本开始支持存储过程。存储过程(Stored Procedure)是一种在数据库中存储复杂程序...
  • 7 一个变量可以同时被说明为const和volatile吗? 2. 8 什么时候应该使用const修饰符? 2. 9 浮点数比较(floating—point comparisons)的可靠性如何? 2. 10 怎样判断一个数字型变量可以容纳的最大值? 2. 11 对...
  • VB编程资源大全

    2007-10-17 20:47:23
    grad.ZIP 在 windows 95 中实现渐变的标题栏的例子(19KB) 7,clrcombo.ZIP 从combobox中选择颜色(325KB) 8,coolbar.ZIP 在vb4中显示ie风格的coolbar(30KB) 9,gradient.ZIP 实现渐变效果...
  • 游戏之旅--我的编程感悟.pdf

    热门讨论 2010-09-12 15:55:10
    5.1 Windows编程入门 104 5.1.1 Windows版本综述 105 5.1.2 操作系统的核心 107 5.1.3 Windows API和DLL 110 5.1.4 COM 111 5.1.5 Windows的窗口和消息处理与传递 114 5.1.6 Windows GDI 125 5.2 控制游戏的...
  • VisualC++编程资源大全源码控件,不错的资料,可以学习下 1,WINAPI_OCX.zip 封装了部分Windows API的控件(92KB) 2,HeaderCtrl.zip 多行标题的CListCtrl(19KB) 3,RoundBut.zip 你需要圆形的按钮吗?这个类已经替你...
  • 本书从编程实践的角度详细介绍了Windows环境下和DOS环境下的串口通信的基本方法,并根据当前串口与网络结合发展的趋势,介绍了串口与网络TCP/IP、远程控制与监测相结合的一些解决方案和编程要点。由于编程步骤详尽...
  • 高质量C++编程指南.zip

    2013-09-26 16:46:18
    3.2 简单的WINDOWS应用程序命名规则 23 3.3 简单的UNIX应用程序命名规则 25 第4章 表达式和基本语句 26 4.1 运算符的优先级 26 4.2 复合表达式 27 4.3 IF 语句 27 4.4 循环语句的效率 29 4.5 FOR 语句的循环控制变量...
  • 代码迁移之前编写的时候还运行的很好,现在怎么突然就不能运行了?在我电脑上运行的很好,换了电脑怎么就不能运行了?开发软件不能只顾写代码,更要确保代码可以迁移,易于部署,易于...还是Windows7?还是MacOS?...
  • Windows 程序设计大全

    2008-10-21 16:25:45
    8.如果不是天才的话,想学编程就不要想玩游戏——你以为你做到了,其实你的C++水平并没有和你通关的能力一起变高——其实可以时刻记住:学C++是为了编游戏的; 9.看Visual C++的书,是学不了C++语言的; 10.浮躁...
  • VB编程者不可错过!英文 htm格式(99.4.3日版)(289KB) 37,api011.zip htm格式 中文(1019KB) 38,api012.zip VB的API说明下载包 (htm格式,中英文)(50KB) 39,34.zip 用API函数对注册表进行操作(8KB) 40,fileprops.zip ...
  • 本书从编程实践的角度详细介绍了Windows环境下和DOS环境下的串口通信的基本方法,并根据当前串口与网络结合发展的趋势,介绍了串口与网络TCP/IP、远程控制与监测相结合的一些解决方案和编程要点。由于编程步骤详尽...
  • 在这个环境中,可以开发在Windows上运行的几乎所有应用程序,而C#是专门用于.NET Framework的编程语言。例如,使用C#可以编写动态Web页面、Windows Presentation Foundation应用程序、XML Web服务、分布式应用程序的...
  • 中国程序员不要被Windows俘虏

    千次阅读 2003-12-17 23:56:00
    中国程序员不要被Windows俘虏顾剑辉(Solarsoft)我学习编程7年了,使用过多种开发工具,如:Doc时代的TC,FoxBase,Windows时代的,delphi、c++builder,VC,asp等,每当用那些使程序员变得傻瓜的工具,我不时问自己,...
  • 5.1 Windows编程入门 104 5.1.1 Windows版本综述 105 5.1.2 操作系统的核心 107 5.1.3 Windows API和DLL 110 5.1.4 COM 111 5.1.5 Windows的窗口和消息处理与传递 114 5.1.6 Windows GDI 125 5.2 控制游戏的速度 130...
  • 5.1 Windows编程入门 104 5.1.1 Windows版本综述 105 5.1.2 操作系统的核心 107 5.1.3 Windows API和DLL 110 5.1.4 COM 111 5.1.5 Windows的窗口和消息处理与传递 114 5.1.6 Windows GDI 125 5.2 控制游戏的速度 130...
  • VB编程资源大全(源码 多媒体)

    热门讨论 2007-10-18 15:20:26
    m016_aviplay.ZIP 利用Windows API 播放AVI文件(3KB) 26,m015.ZIP 一个音量控制小程序(7KB) 27,m014.ZIP 播放.mid格式的背景音乐,你可以在此基础上增加其它功能(13KB) 28,m013.ZIP 播放....
  • Visual C++ 编程资源大全(源码 控件)

    千次下载 热门讨论 2007-10-19 19:28:33
    cirbutton.zip 一个圆形的可下推按钮,还不错,可以试试看(50KB)<END><br>7,anibutton.zip 这是一个可以使用DIB显示动画的按钮类库,值得一试(186KB)<END><br>8,bitbutton.zip 这个类库允许你在按钮上使用...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 150
精华内容 60
关键字:

windows7可以编程吗