用nasm在linux下编写第一个64位汇编程序
用nasm在linux下编写第一个64位汇编程序
安装nasm汇编器命令
1sudo apt-get install nasm
创建文件命令
1vim hello.asm
代码内容
12345678910111213141516section .data text db "hello, World!",10section .text global _start_start: mov rax, 1 mov rdi, 1 mov rsi, text mov rdx, 14 syscall mov rax,60 mov rdi, 0 syscall
编译命令
1nasm -f elf64 -o hello.o hello.asm
链接命令
1ld hello.o -o hello
运行命令
1./hello
c与cpp使用raylib与raygui库
raylib1.first.c
创建窗口
循环绘制窗口
窗口上绘制文本
123456789101112131415161718192021222324252627#include "raylib.h"#pragma comment(lib, "raylib.lib")#pragma comment(lib, "winmm.lib")int main() { const int screenWidth = 800; const int screenHeight = 450; InitWindow(screenWidth, screenHeight, "VS2022 Raylib Demo"); SetTargetFPS(60); while (!WindowShouldClose()) { // <----- UPDATE -----> // <----- RENDER -----> Begi ...
使用C++开发第一个windows窗口程序demo
[toc]
第一个窗口程序新建一个Windows Desktop空项目步骤
打开VisualStudio2022
在新建项目里选择windows Desktop Wizard
点击Creat按钮
在Application type选项中选择Desktop Application(.exe)
在Additional options中勾选Empty project
点击OK按钮
在源文件中添加一个文件命名为Demo.cpp
第一个窗口程序完整代码Demp.cpp
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162//Demp.cpp#include "tchar.h"#include <windows.h>LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){ swit ...
编码
codeReverse Numbe Question( length 3)123456789101112任务描述任务:编写程序,输入一个三位正整数,程序逆序输出该整数。例如,输入是123,逆序输出该整数,即321。测试说明对编写的代码进行测试,并且约定输入的是一个三位正整数,输出的也是一个三位正整数,数字中间都没有空格。测试输入:123预期输出:321
0.Pseudocode123456789ALIGROTHM reverseThreeDigitNumberINPUT: Integer nBegin units = n MOD 10 tens = (n/10) MOD 10 hundreds = n/10 OUTPUT units,tens,hundredsEND
标准版伪代码
12345678910ALGORITHM reverseThreeDigitNumber INPUT: n (An integer) OUTPUT: Reversed integerBEGIN units <- n MOD 10 tens <- ...
mingw_gcc等编译器的使用
[toc]
GCC编译器的基本使用gcc的编译过程
预处理。
1gcc -E main.c -o main.i
编译。用编译器将预处理代码转换为汇编代码
1gcc -S main.i -o main.s
汇编。用汇编器将汇编代码转换为机器码,产生的文件叫做目标文件
12gcc -c main.s -o main.o#as -c main.s -o main.o
链接。链接过程使用链接器将该目标文件与其他目标文件、库文件、启动文件等链接起来生成可执行文件
12gcc main.o -o main#ld main.o -o main
GCC编译器编译c++gcc/g++ 编译c/cpp的区别(十分啰嗦,十分详细)
1gcc -s main.cpp -o main.exe -lstdc++
mingw64位编译32位c程序命令
1gcc -m32 main.c -o main.out
gcc编译32位c++程序命令
1gcc -m32 test.cpp -o test.out
gcc编译64位c++程序命令
1gcc -m64 test.c ...
Qt6.2.4静态编译
使用MinGW进行静态编译Qt
Build Tools
安装 Build Tools
安装 Chocolatey
安装 Perl & Python
安装 CMake & MinGW & Ninja
检查环境
在清华大学镜像源下载源码
在本地路径新建文件夹D:\software\Qt\6.2.4\mingw_624_static,预留120G 空间。
编译指令为:
使用MSVC进行编译Qt
配置环境参考上方内容,添加LLVM
在清华大学镜像源下载源码
修改源码里的qtbase\mkspecs\common\msvc-desktop.conf文件(非必须,建议不改)
在x64 Native Tools Command Prompt for VS 2022 里进入Qt源代码目录
编译命令
参考资料
使用MinGW进行静态编译QtBuild Tools
CMake (可通过 Qt online installer 安装)
Ninja (可通过 Qt online installer 安装)
ActivePerl (使用 Chocolatey 安装) ...
使用Python进行第一个爬虫脚本
First web crawler
Development
Install python
First crawler program
Install dependent environment
First crawler code
获取豆瓣网页信息
First web crawlerDevelopmentInstall pythonFirst crawler programInstall dependent environment1pip install requests
First crawler code
request
12345678import requestsresponse = requests.get("http://books.toscrape.com/")if response.ok: print(response.text)else: print("请求失败")
2.head
获取豆瓣网页信息1.send requests
12345import requestsresponse = ...
使用qt5.8开发数据库程序
目录
目录
开发环境
开发过程
mysql数据库部分
qt开发部分
出现的问题及修复
开发环境
开发过程
mysql数据库部分
qt开发部分
新建qt项目,命名为login_test
完整代码
出现的问题及修复
开发环境
mysql5.0
qt5.8
开发过程mysql数据库部分qt开发部分出现的问题及修复
开发环境
mysql5.0
qt5.8
开发过程mysql数据库部分开启
连接
在mysql中新建数据库
1CREATE DATABASE login_test DEFAULT CHARSET utf8;
选择数据库login_test
1use login_test;
新建表格user_login
1234567CREATE TABLE user_login( user_id int PRIMARY KEY AUTO_INCREMENT, user_name varchar(60) NOT NULL, user_pwd varchar(60) NOT NULL, user_datetime datetime NOT NULL);
qt开发 ...
MFC与qt中的类是什么
使用QT框架创建窗口程序
在main函数中创建窗口程序
指针的方式调用类
使用继承的方式调用Qt类
使用MFC框架创建窗口程序
在main函数中调用MFC类
使用继承的方式调用MFC中的类创建窗口程序
使用新建全局对象的方式创建窗口
模仿MFC框架
模仿MFC隐藏入口函数WinMain实现隐藏main函数
模仿MFC封装Win32程序
模仿Qt框架
模仿QT
使用QT框架创建窗口程序在main函数中创建窗口程序在qt中的其他类别里新建qmake项目,项目中包含一个文件FirstQt.pro
添加文件命名为main.cpp
代码示例
main.cpp
1234567891011121314151617//main.cpp#include <QApplication>#include <QWidget> //窗口控件基类int main(int argc, char **argv){ QApplication app(argc, argv); QWidget w; w.setWindowTitle("Tit ...
一些win32api使用方法
[toc]
音频c/c++在控制台程序中调用api播放音频方法一
main.cpp
1234567891011121314151617181920#include <stdio.h>#include <windows.h>#include "mmsystem.h"//导入声音头文件#pragma comment(lib,"winmm.lib")//导入声音头文件库int main(int argc, const char* argv[]) { mciSendString(L"OPEN D:\\desktop\\video.mp3 ALIAS MUSIC", NULL, 0, 0); mciSendString(L"PLAY MUSIC FROM 0", NULL, 0, NULL); LPWSTR wavLength[64]; long iWavLength = 0; mciSendStri ...
