精华内容
下载资源
问答
  • 通过 Python 来运行的你的程序有两种方法——使用交互式解释器提示符或直接运行一个源代码文件。我们将了解如何使用他们二者的功能。使用解释器提示符在你的操作系统中打开终端(Terminal)程序(正如我们先前在 ...

    第一步

    接下来我们将看见如何在 Python 中运行一个传统的“Hello World”程序。Python教程本章将会教你如何编写、保存与运行 Python 程序。

    通过 Python 来运行的你的程序有两种方法——使用交互式解释器提示符或直接运行一个源代码文件。我们将了解如何使用他们二者的功能。

    使用解释器提示符

    在你的操作系统中打开终端(Terminal)程序(正如我们先前在 安装 章节所讨论过的那样)然后通过输入 python3 并按下 [enter] 键来打开 Python 提示符(Python Prompt)。

    当你启动 Python 后,你会看见在你能开始输入内容的地方出现了 >>> 。这个被称作 Python 解释器提示符(Python Interpreter Prompt) 。

    在 Python 解释器提示符,输入:

    print("Hello World")

    在输入完成后按下 [enter] 键。你将会看到屏幕上打印出 Hello World 字样。

    下面是一个在 Mac OS X 电脑上你能够看见的结果的示例。有关 Python 软件的细节将会因为你使用的电脑而有所不同,但是从提示符(如 >>> )开始部分应该是相同的,而不会受到操作系统的影响。

    > python3

    Python 3.5.1 (default, Jan 14 2016, 06:54:11)

    [GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin

    Type "help", "copyright", "credits" or "license" for more information.

    >>> print("Hello World")

    Hello World

    你自然会注意到,Python 会立即给你输出了一行结果!你刚才所输入的便是一句独立的 Python 语句 。我们使用 print (不必太过惊讶)命令来打印你所提供的信息。在这里,我们提供了文本 Hello World ,然后它便被迅速地打印到了屏幕上。

    如何退出解释器提示符

    如果你正在使用一款 GNU/Linux 或 OS X 上的 Shell 程序,你可以通过按下 [ctrl + d] 组合键或是输入 exit() (注意:要记住要包含括号 ())并敲下 [enter] 来退出解释器提示符。

    如果你使用的是 Windows 命令提示符,可以按下 [ctrl + z] 组合键并敲击 [enter] 键来退出。

    选择一款编辑器

    当我们希望运行某些程序时,总不能每次都在解释器提示符中输入我们的程序。因此我们需要将它们保存为文件,从而我们便可以多次地运行这些程序。

    要想创建我们的 Python 源代码文件,我们需要一款能够让你输入并保存代码的编辑器软件。一款优秀的面向程序员的编辑器能够帮助你的编写源代码文件工作变得轻松得多。故而选择一款编辑器确实至关重要。你要像挑选你想要购买的汽车一样挑选你的编辑器。一款优秀的编辑器能够帮助你更轻松地编写 Python 程序,使你的编程之旅更加舒适,并助你找到一条更加安全且快速的道路到达你的目的地(实现你的目标)。

    对编辑器的一项最基本要求为 语法高亮 ,这一功能能够通过标以不同颜色来帮助你区分 Python 程序中的不同部分,从而能够让你更好 看清 你的程序,并使它的运行模式更加形象化。

    如果你对应从哪开始还没有概念,我推荐你使用 PyCharm 教育版 软件,它在 Windows、Mac OS X、GNU/Linux 上都可以运行。在下一节你能够了解到更多信息。

    如果你正在使用 Windows 系统,不要用记事本——这是一个很糟糕的选择,因为它没有语法加亮功能,同样重要的另一个原因是,它不支持文本缩进功能,这一功能我们之后将会了解它究竟有多重要。而一款好的编辑器能够自动帮你完成这一工作。

    如果你已是一名经验丰富的程序员,那你一定在用 Vim 或 Emacs 了。无需多言,它们都是最强大的编辑器之一,用它们来编写你的 Python 程序自是受益颇多。我个人用它们来编写了我大部分程序,同时也因此写了一本书《Entire Book on Vim》。

    或许你有意去花费时间来学习 Vim 或 Emacs,那么我自是强烈推荐你学习它们二者中的一款,它们将在长远意义上对你裨益颇深。当然,正如我先前所推荐的,初学者可以以 PyCharm 开始,从而在此刻专注于学习 Python 而不是编辑器。

    再此重申,请选择一款合适的编辑器——它能够让编写 Python 程序变得更加有趣且容易。

    PyCharm

    PyCharm 教育版是一款能够对你编写 Python 程序的工作有所帮助的免费编辑器。

    当你打开 PyCharm 时,你会看见如下界面,点击 Create New Project :

    pycharm_open.png

    选择 Pure Python :

    pycharm_create_new_project.png

    将你的项目路径位置中的 untitled 更改为 helloworld ,你所看到的界面细节应该类似于下方这番:

    pycharm_create_new_project_pure_python.png

    点击 Create 按钮。

    对侧边栏中的 helloworld 右击选中,并选择 New -> Python File :

    pycharm_new_python_file.png

    你会被要求输入名字,现在输入 hello :

    pycharm_new_file_input.png

    现在你便可以看见一个新的文件已为你开启:

    pycharm_hello_open.png

    删除那些已存在的内容,现在由你自己输入以下代码:

    print("hello world")

    现在右击你所输入的内容(无需选中文本),然后点击 Run 'hello' 。

    pycharm_run.png

    此刻你将会看到你的程序所输出的内容(它所打印出来的内容):

    pycharm_output.png

    嚯!虽然只是刚开始的几个步骤,但从今以后,每当我们要求你创建一个新的文件时,记住只需在 helloworld 上右击并选择 -> New -> Python File 并继续如上所述步骤一般输入内容并运行即可。

    你可以在 PyCharm Quickstart 页面找到有关 PyCharm 的更多信息。

    Vim

    安装 Vim。

    Mac OS X 应该通过 HomeBrew 来安装 macvim 包。

    Windows 用户应该通过 Vim 官方网站 下载“自安装可执行文件”。

    GNU/Linux 用户应该通过他们使用的发行版的软件仓库获取 Vim。例如 Debian 与 Ubuntu 用户可以安装 vim 包。

    安装 jedi-vim 插件为 Vim 增添自动完成功能。

    安装与之相应的 jedi Python 包:pip install -U jedi

    Emacs

    安装 Emacs 24+。

    Mac OS X 用户应该从 http://emacsformacosx.com 获取 Emacs。

    Windows 用户应该从 http://ftp.gnu.org/gnu/emacs/windows/ 获取 Emacs。

    GNU/Linux 用户应该从他们使用的发行版的软件仓库获取 Emacs。如 Debian 和 Ubuntu 用户可以安装 emacs24 包。

    安装 ELPY。

    使用一份源代码文件

    现在让我们回到编程中来。在你学习一门新的编程语言时有一项传统,你所编写并运行的第一个程序应该是 “Hello World” 程序——它所做的全部工作便是宣言你所运行的“Hello World”这句话。正如西蒙·科泽斯(Simon Cozens,一译西蒙·寇森斯) 1 所说,这是“向编程之神所称颂的传统咒语,愿他帮助并保佑你更好的学习这门语言”。

    启动你所选择的编辑器,输入如下程序并将它保存为 hello.py 。

    如果你正在使用 PyCharm,我们已经讨论过如何从源文件中运行它了。

    对于其它编辑器,打开一个新文件名将其命名为 hello.py ,然后输入如下内容:

    print("hello world")

    你应当将文件保存到哪里?保存到任何你知道其位置与路径的文件夹。如果你不了解这句话是什么意思,那就创建一个新文件夹并用这一路径来保存并运行你所有的 Python 程序:

    Mac OS X 上的 /tmp/py 。

    GNU/Linux 上的 /tmp/py 。

    Windows 上的 C:\py 。

    要想创建上述文件夹(在你正在使用的操作系统上),你可以在终端上使用 mkdir 命令,如 mkdir /tmp/py 。

    重要提示:你需要经常确认并确保你为文件赋予了 .py 扩展名,例如 foo.py 。

    要想运行你的 Python 程序:

    打开终端窗口(你可查阅先前的 安装章节来了解应该怎么做)。

    使用 cd 命令来改变目录到你保存文件的地方,例如 cd /tmp/py 。

    通过输入命令 python hello.py 来运行程序。程序的输出结果应如下方所示:

    $ python hello.py

    hello world

    terminal_screenshot.png

    如果你得到了与上图类似的输出结果,那么恭喜你!——你已经成功运行了你的第一个 Python 程序。你亦已经成功穿过了学习编程的最困难的部分,也就是,开始编写你的第一个程序!

    如果你遭遇了什么错误,请确认是否已经正确地输入了上面所列出的内容,并尝试重新运行程序。要注意 Python 是区分大小写的,如 print 和 Print 是不同的——注意前者的 p 是小写的,而后者的 P 是大写的。此外,你需要确保每一行的第一个字符前面都没有任何空格或制表格——我们会在后面了解 为什么这件事如此重要。

    它是如何工作的

    一款 Python 程序是由 语句 所构成的。在我们的第一个程序中,我们只有一条语句。在这条语句中,我们调用 print 语句 来搭配我们提供的文本”hello world“。

    获取帮助

    如果你需要获得 Python 中有关任何Python函数或语句的快速信息,你可以使用其内置的 help 功能。这在使用解释器提示符时十分有用。例如,运行 help('len') 命令——这将显示出有关 Python len函数的帮助,了解其是用来计算项目数量的。

    小贴士:按下 q 键可以退出帮助。

    类似地,你可以通过此方式获得几乎所有有关 Python 的信息。使用 help() 命令来了解有关 help 它本身的更多信息吧!

    如果你需要获得有关 return 这类运算符的帮助,你需要做的就是将它们放在引号中,就像 help('return') 这般,这样 Python 就不会混淆我们正在试图做的事情。

    总结

    现在,你应该可以轻松地编写、保存并运行 Python 程序了。

    从此你便成为一名 Python 用户了,现在让我们来学习更多有关 Python 的概念。

    展开全文
  • C的代码是如何变成程序

    千次阅读 2013-04-07 22:00:25
    C的代码是如何变成程序的  C语言是一门典型的编译语言,源代码文件需要编译成目标代码文件才能运行。可以认为程序文件就是编译好的目标代码文件。 以GCC的编译过程为例。GCC的翻译过程可以分成四个阶段:预处理器、...

    C的代码是如何变成程序的

            C语言是一门典型的编译语言,源代码文件需要编译成目标代码文件才能运行。可以认为程序文件就是编译好的目标代码文件。

    以GCC的编译过程为例。GCC的翻译过程可以分成四个阶段:预处理器、编译器、汇编器、链接器,执行这四个阶段的程序一起构成了一个编译系统。


    图 1 GCC编译系统(取自《深入理解计算机系统》)

    1 预处理器

            预处理器(cpp)负责对源代码进行文本处理。它根据以字符#开头的命令,修改原始的C代码。如:

    1.   #include <stdio.h> 从编译器的内置查找路径的根部开始查找stdio.h文件,读取其内容,并把它直接插入到程序文本中。

    2.   #include ”my_header.h” 与上条的区别就是查找路径是从当前代码文件所在目录开始。

    3.   #define MACRO_NAME CONTEXT 将原始代码中所有的MACRO_NAME文本都替换成CONTEXT,这种替换可能会引起很多难以理解的错误。

    4.   #define FUNC_NAME(PARA_LIST) CONTEXT 与上条类似,区别在于会在查找到FUNC_NAME的地方进行参数匹配,并将CONTEXT中出现的参数名称用对应的文本进行替换。

    5.   #define MACRO_NAME #undef MACRO_NAME 前者用于单纯的宏定义,后者用于取消宏定义。

    6.   #ifdef #ifndef #else #endif 这几个都是用于条件编译的命令,用于决定被包括的文本是否加入到处理后的文本中。

           常用的预处理命令就是这些,处理后就得到了另一个C代码文件,一般用.i作为扩展名。

     

            这部分有一个常用的技巧:header guard,用于防止头文件被重复加载。

            假设一个场景,某个工程中的3个文件:main.c、a.h、b.h,其中每个文件的开头有这样的文本:

    //main.c
    #include ”a.h”
    #include ”b.h”
    ...

    //a.h
    #include ”b.h”
    void func_a();

    //b.h
    void func_b();
           上面提到了预处理器在处理#include时是直接的文本插入,处理后的main.i文件的内容是:

    //main.i
    void func_b();
    void func_a();
    void func_b();
    ...
           b.h的内容被载入了两次!这个例子足够简单,出现这种问题不会发生错误,但如果b.h文件很大,重复加载后可能会出现很多问题,还会导致编译时间的延长。这种情况下我们可以使用header guard来防止头文件被重复加载,中间省略的部分即头文件的正式内容:

    #ifndef XXX_YYY_ZZZ
    #define XXX_YYY_ZZZ
    ...
    #endif
           其中XXX_YYY_ZZZ是你自定义的宏名字。如果为每个头文件选择一个不重复的宏名字,这个宏组合保证了每个头文件只会被一个代码文件载入一次,因为第二次载入时XXX_YYY_ZZZ宏已经定义过了,就直接跳到了#endif的后面。

    2 编译阶段

           编译器(ccl)将文本文件hello.i翻译成文本文件hello.s,它包含一个汇编语言程序。汇编语言程序中的每条语句都以一种标准的文本格式确切地描述了一条低级机器语言指令。汇编语言为不同高级语言的不同编译器提供了通用的输出语言,例如C编译器和Fortran编译器产生的输出文件用的都是一样的汇编语言。

           例如,hello.c为:

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
        printf("hello world\n");   
        return 0;
    }
           运行gcc –S hello.c可以得到hello.s文件,其内容为:

        .file   "hello.c"
        .def    ___main;    .scl    2;  .type   32; .endef
        .section .rdata,"dr"
    LC0:
        .ascii "hello world\0"
        .text
        .globl  _main
        .def    _main;  .scl    2;  .type   32; .endef
    _main:
    LFB6:
        .cfi_startproc
        pushl   %ebp
        .cfi_def_cfa_offset 8
    ...
           所有以字符.开头的行都是指导汇编器和链接器的命令,其它行则是被翻译成汇编语言的代码。

    3 汇编阶段

           接下来,汇编器(as)将hello.s翻译成机器语言指令,把这些指令打包成一种叫做可重定位目标程序的格式,并将结果保存在目标文件hello.o中。hello.o文件是一个二进制文件,它的字节编码是机器语言指令而不是字符,如果我们在文本编辑器中打开hello.o文件,看到的将是一堆乱码。

           运行gcc –c hello.c可以得到hello.o文件,它是二进制格式,无法直接查看,可以用反汇编器来查看它的编码:objdump –d code.o

           以一种典型的可重定位目标格式ELF为例。ELF文件的头部数据包含了:

    1.   生成该文件的系统的字的大小和字节顺序。

    2.   帮助链接器语法分析和解释目标文件信息的数据。

           ELF文件中包含的数据可分成几个节,每个节的位置和大小是由节头部表描述的:

    1.   .text 机器代码

    2.   .rodata 只读数据,比如双引号括起的字符串等。

    3.   .data 已初始化的全局变量。

    4.   .bss 未初始化的全局变量。在ELF文件中它只是占位符,在目标文件中不占据实际的空间。

    5.   .symtab 一个符号表,存放在程序中定义和引用的函数和全局变量的信息。

    6.   .rel.text 一个.text节中位置的列表,当链接器进行链接时,需要修改这些位置。

    7.   .rel.data 被引用或定义的全局变量的重定位信息,依赖于其它模块信息的已初始化的全局变量,其值在链接时需要被修改。

    8.   .debug 调试符号表。

    9.   .line 机器代码与源文件行号的对应关系,只有在-g选项时才会产生。

    10. .strtab 一个字符串表,包括.symtab和.debug中的符号表,以及每个节的名字。


    图 2 典型的ELF可重定位目标文件

    4 链接阶段

            链接器(ld)负责将多个可重定位目标文件(.o文件)合并为一个可执行文件,如hello程序文件就是由hello.o和printf.o文件合并得来的。合并过程中链接器负责解析符号表,并修改不同编译模块间的引用信息,如hello.o的main函数调用printf函数时,机器代码的跳转位置直到链接阶段才会确定,链接器会将跳转位置修改为printf函数的入口位置。

            链接器解析本地符号的引用是非常简单的。编译器只允许每个模块中每个本地符号只有一个定义。不过,对全局符号的解析就很复杂。如果链接器在所有模块中都找不到某个符号时,它就输出”undefined reference”错误信息并终止。如果所有符号的解析都顺利完成,链接器最后会输出所有符号的引用位置都确定了的可执行文件。
    展开全文
  • 但是一个C语言程序如何从代码变成可执行程序?可以简单概括为: C源程序->编译预处理->编译汇编程序->链接程序->可执行文件 一、预处理 预处理阶段阶段包括头文件展开,宏替换,去注释,条件编译。 ...

    想要知道这个问题,首先要了解:

    编程语言包括,机器语言,汇编语言,高级语言。

    计算机使用的是0,1这样的二进制,二进制是计算机的基础,用这些0,1组合来命令计算机去工作。学校里那些老教授讲起他们求学的时候,总喜欢说我们那时候编程序用的是打孔的方式,也就是写出一串串0,1的组合来编程序。为了缓解编程的痛苦,一个新的语言出现了——汇编语言。用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“A D D”代表加法,“M O V”代表数据传递等等,但是计算机并不认识这些,所以就需要一个翻译程序来完成这项工作,这种翻译程序就叫做汇编程序。 但是汇编程序还是很复杂,高级语言的出现使程序更容易编程,更人性化。

    但是一个C语言程序如何从代码变成可执行程序?可以简单概括为:C源程序->编译预处理->编译汇编程序->链接程序->可执行文件

    一、预处理

    预处理阶段阶段包括头文件展开,宏替换,去注释,条件编译。

    头文件展开:头文件一般形式为#include<stdio.h>或者#include “game.h" 。两者的区别为后者一遍在寻找头文件时是在当前工程目录下寻找,前者实在系统库的目录下寻找。但是,头文件是干什么的呢??头文件一遍用#include定义了宏,或者一些函数的声明。使用头文件的目的就是为了多个C语言文件调用某个定义,只需引用头文件就不在需要在定义一遍。预处理阶段的头文件展开就是把头文件那些所需要的定义加入到程序中以供使用。

    宏替换:#define 机制包括了一个规定,允许把参数替换到文本中,这种实现通常称为。(常见约定:宏的名字全部大写)

    在预处理阶段,编译器把参数替换到文本中,进行运算。

    宏不单单可以替换变量常量,也可以替换函数。但是宏和函数还是有些区别;

    参数类型:宏与类型无关。例如:比较两个数的大小可以用宏来完成,#define MAX(a,b) ((a)>(b)?(a):(b)) 使用宏的好处是不用考虑啊,a,b的类型,可以是整型,可以浮点型,但是用函数来完成就比较麻烦。

    代码长度:每次使用宏都要将代码插到程序中,除非代码很小否则代码程度大大加长,这时使用函数就比较好。

    执行速度:使用宏更快,使用函数存在调用/返回函数的额外开销。

    参数求职:参数每次使用宏定义时,他们都将重新求值可能产生不可预料的结果。函数不会有影响。

    操作符优先级:宏参数求值是在所有周围表达式的上下文环境里,除非加上括号,否则可能产生不可预料的结果。而函数参数只在调用时求值一次并反給函数,表达式的求值结果更容易预测。

    去注释:预处理阶段,编译器把那些注释的语句自动删除。

    条件编译:可以选择代码的一部分是被忽略还是被执行。

    语法:

    #if constant-expression  (常量表达式)

    statements1

    #elif constant-expression

    statements2

    #else 

    statements3

    endif

    是否被定义:测试一个符号是否被定义

    #if defined(symbol)

    #ifdef symbol


    #if  !defined(symbol)

    #ifndef symbol


    编译:把C语言代码转化成汇编代码

    链接程序:把多个文件链接一起生成可执行程序。





    展开全文
  • 如何把好的java代码生成exe程序

    千次阅读 2020-05-24 18:34:37
    在完成GUI代码后,我很好奇后缀为.java的文件如何转换为exe文件,所以就有了这篇文章。 java代码生成exe文件的具体操作 java代码打包成.jar包 用软件exe4j将.jar包转换成exe文件 这个部分我是参考的另一为博主的...

    Window’s Java Note

    写在开头

    起因是我想把学过的Java知识捡起来,所以决定先写一个简单的能源管理系统。
    编程用的软件是Eclipse,图形页面用的是Java自带的GUI。
    在完成GUI代码后,我很好奇后缀为.java的文件如何转换为exe文件,所以就有了这篇文章。

    java代码生成exe文件的具体操作

    1. java代码打包成.jar包
    2. 用软件exe4j将.jar包转换成exe文件

    这个部分我是参考的另一为博主的文章手把手教你如何把java代码,打包成jar文件以及转换为exe可执行文件,这位博主写得很详细。
    下面会介绍一下我按照这位博主操作中遇到的问题,供大家参考。

    遇到的问题

    • exe4j官网download下载的文件无法安装

      我遇到的情况是点击下载好的文件不能立刻安装exe4j,而是要求点击locate后选择jre文件
      通常jre文件会和java环境变量在一个文件夹,正常会在路径C:/Program Files/Java中。
      如果没有的话直接去下载就好.

    • 导出的exe文件无法运行
      显示如下错误

      java.lang.UnsupportedClassVersionError: src/Main has been compiled by a more recent version of the Java Runtime (class file version 57.0), this version of the Java Runtime only recognizes class file versions up to 52.0
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(Unknown Source)
      at java.security.SecureClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.defineClass(Unknown Source)
      at java.net.URLClassLoader.access$100(Unknown Source)
      at java.net.URLClassLoader$1.run(Unknown Source)
      at java.net.URLClassLoader$1.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(Unknown Source)
      at java.lang.ClassLoader.loadClass(Unknown Source)
      at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
      at java.lang.ClassLoader.loadClass(Unknown Source)
      at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:81)
      at com.exe4j.runtime.WinLauncher.main(WinLauncher.java:94)
      

      解决方案:exe4j 配置JRE(Configure JRE)填java version的时候我没有严格遵守博主的操作,最小版本填了1.5,最大版本填了1.8,导出后运行exe文件显示jdk版本错误之类的信息。
      解决方案就是最小版本要比自己电脑中的jre版本低,最大留空不要填。

    • exe文件可以正常运行后,每次运行都会有如下弹窗

      在这里插入图片描述
      这个原因是因为软件没有激活使用,激活码可以在网上找。
      激活操作如下:
      第一步
      在这里插入图片描述
      Name和Company分别表示姓名和公司,随便填就好,第三行License Key就是激活码,全部填入点击OK就可以。
      注意:软件激活后重新用exe4j转换一下

    展开全文
  • 通过 Python 来运行的你的程序有两种方法——使用交互式解释器提示符或直接运行一个源代码文件。我们将了解如何使用他们二者的功能。使用解释器提示符在你的操作系统中打开终端(Terminal)程序(正如我们先前在 ...
  • 参数 作用 l 显示当前调试程序代码,一次显示10行 r 运行程序,没有断点则会一次执行完程序 b 行号 在指定行号位置加入断点 i b 查看所有断点信息 disable 断点序号 禁用断点 enable 断点序号 启用断点 n 逐过程...
  • MFC不是类似活动模板库(ATL)的通用COM框架,但是MFC使编写某些COM程序更容易,使编写ActiveX控件的过程更简单,而且它使编写自动化(Automation)服务器程序(使用COM技术来供脚本客户调用的程序)变成了二件轻而易举的...
  • vs2017+QT变成修改ui界面程序中ui对象没有更新,解决方法。 第一步:
  • Hello.c #include<stdio.h> int main() { printf("Hello World\0"); return 0; } ...我们在VS下只需要Ctrl+F5便能打印出Hello World, ...在源代码文件转变为可执行文件中间发生了什么 ...
  • 代码的人离职之后....

    万次阅读 多人点赞 2016-02-15 22:13:21
    半个月没有blog了,正好是春节假期。 静下来,想想自己代码,真是...作者最近了不少代码,review了不少代码,也做了不少重构,总之是对着烂代码工作了几周。为了抒发一下这几周里好几次到达崩溃边缘的情绪,他
  • 从编写源代码程序在内存中运行的全过程解析

    万次阅读 多人点赞 2018-04-21 17:49:51
    作为一个C/C++程序员,搞清楚从编写源代码程序运行过程中发生的细节是很有必要的。这在之前也是困扰我的一个很大问题,因为最近在忙着找实习,一直没有下定决心来这篇博客,最近才抽时间。下面的代码除了明显...
  • 交互提示模式下编写代码安装Python在Windows 或 Linux中的终端中直接输入python即进入Python 交互会话模式。Python 交互模式有以下几个注意点:1. 只能够输入Python命令在Python交互模式下输入Python代码,而不要...
  • 正如 Electron 官方所说“如果你可以建一个网站,你就可以建一个桌面应用程序”。作为一个跨平台的桌面应用开发框架,Electron 的迷人之处在于,它是建立在 Chromium 和...
  • Python写完程序,要靠命令来执行太LOW,太低调了,还不华丽了。 再说别人的电脑,都没有Python库,怎么执行,还能不能愉快的一起玩耍了。 所以哪怕只会写一个HelloWorld,也要弄成exe程序,方便伟大的代码传播事业...
  • 一行代码将Python程序转换为图形界面应用

    千次阅读 多人点赞 2021-01-23 20:20:00
    Gooey项目支持用一行代码将(几乎)任何Python 2或3控制台程序转换为GUI应用程序。1.快速开始开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这...
  • 从微信小程序看前端代码安全

    万次阅读 2018-01-06 15:48:15
    起初在研究对移动网络传输进行功耗优化,在一次意外的监听网络传输包中截获了微信小程序的请求包,借此来窥探当下前端代码安全。 0x01 小程序分析 小程序包结构 Segment Name Length ...
  • 怎么把用c语言开发的程序变成软件

    千次阅读 多人点赞 2019-10-13 15:34:05
    身为小白的我最近在学C语言,想想学做点实际性的东西,一个小游戏自己玩一玩,但是好的游戏怎么把它倒腾成可以在电脑安装的软件那,???? 于是就各种上网搜,找到一篇不错的回答,虽然没告诉具体的怎样做,...
  • 微信小程序代码包压缩策略

    千次阅读 2018-07-11 19:46:38
    避开小程序官方规定的2M限制,代码包体积超过上限时将无法进行预览/上传/发布。2. 减小代码包体积,可以降低小程序下载时长、首次加载时长,降低新用户流失率。3. 能减少下载流量和本地空间占用,提升用户体验。...
  • 下载的代码包里的文件都是干什么的? 当我们从网络上下载matlab的源代码时,得到的通常是代码的压缩包,里面包括很多各种后缀的文件。他们都是什么文件呢,都是干什么用的? m后缀的文件:这是matlab代码的最常用...
  • 写完之后又不知道怎么给他,导出文件吧,可能每次要的时候又来找我。发代码吧,又怕他没有python环境。所以干脆写成一个GUI页面,再做成exe文件直接给他,他爱怎么玩就怎么玩。 文章包含内容 本篇文章包含的东西...
  • 如何出让同事无法维护的代码

    千次阅读 2021-09-06 00:58:57
    原文:http://mindprod.com/jgloss/unmain.html译者:陈皓 (@左耳朵耗子)对,你没看错,本文就是教你怎么出让同事无法维护的代码。一、程序命名容易输入的...
  • 怎么用C++图形界面程序

    万次阅读 多人点赞 2019-06-25 14:24:17
    回想当年,我初学C语言的时候,也有这样的困惑:为啥我程序背景是黑不溜秋的,文字也是一行一行显示的,而别人程序都带着界面和按钮? 这得从何说起呢? 由于我们最常接触的就是Windows系统中各种带有窗体...
  • 然后再cmd里面这行代码pyinstaller -F 你的文件名字(后缀名字是.py) 然后按下回车让它执行 当运行完毕会看见最后一行有个success字样时就是表示成功,然后进入你的文件夹找到dist文件夹,双击打开之后就是你...
  • 这篇文章是突发奇想的,因为最近突然对病毒产生了一些兴趣,因此特别了这么一篇文章来纪念一下. 前面我会首先介绍一下什么是病毒,后面我会把一些病毒的源码发上来. 当然,我也不知道能不能称其为病毒,因此,大佬就当...
  • BH1750FVI光照传感器超详细攻略 一、文章说明 之所以这篇文章,原因有两个。 一是:有个师弟跟我说我发布的文章都偏向于工作者,能不能一些大学生能用到的东西,我想了一下...大家更多的是看攻略之后能够驱动...
  • C语言CGI程序

    千次阅读 2013-01-25 14:20:24
    CGI(公用网关接口)规定了Web服务器调用其他可执行程序(CGI程序)的接口协议标准。Web服务器通过调用CGI程序实现和Web浏览器的交互, 也就是CGI程序接受Web浏览器发送给Web服务器的信息,进行处理, 将响应结果再回送给...
  •   最近帮一个朋友用python了一个读Excel程序操作的程序,具体要求为:读取两个Excel文件,根据其中某个特征的特征值对这两个文件进行取交集操作,生成三个Excel文件,第一个Excel文件为这两个文件的公共集,第二...
  • 程序从入门到快速开发小程序项目

    万次阅读 多人点赞 2018-08-19 21:39:39
    备注:小程序只是突发灵感兴趣弄的,并非专业研究小程序,其实小程序API并不多,不复杂,扩展无非就是JS了。 最近用了大概两天左右的时间看了小程序的官方文档:https://mp.weixin.qq.com/cgi-bin/wx 然后有目标的...
  • 无论新手还是资深开发者都会经常问一个问题,“怎么好的代码?”,要知道怎么代码,首先我们要知道怎么样才是好的代码。要有明确的目标,才能知道如何达成目标。在《程序员修炼之道》中提到的`“ETC Principle...
  • STM32F103代码远程升级(三)基于Ymodem协议串口升级程序的实现

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 196,554
精华内容 78,621
关键字:

代码写完后怎么变成程序