我想在C++编程中学习DirectX.我决定学习DirectX,所以我在网上找到了一些教程,但它们都很复杂,很难理解.我在教程上花了3天时间,我已经阅读了所有内容,但我仍然无法创建初始化DirectX的程序.我认为这很难学习.
任何人都可以推荐一本好的教程/书吗?
我想制作自己的文本文件压缩程序.我对C++编程知之甚少,但我已经学会了所有基础知识并编写/读取文件.我在google上搜索了很多关于压缩的内容,并且看到了许多不同类型的方法来压缩像LZW和Huffman这样的文件.问题是他们中的大多数没有源代码,或者他们有一个非常复杂的源代码.我想问你是否知道我可以学习的任何好的网页并自己制作压缩程序?
编辑:我会让这个话题开放一段时间,因为我打算在接下来的几天里研究这个问题,如果我有任何问题,我会在这里问他们.
我正在尝试编写自己的bootloader.虽然它在QEMU,Bochs和VirtualBox中运行良好,但我似乎无法在笔记本电脑上运行.
在我的笔记本电脑上,引导加载程序与所有模拟器的行为完全不同,挂起看似随机的地方,拒绝打印,甚至跳过一些jmp $指令.
虽然我对"真实硬件"有很多麻烦,但我认为它们都有一个原因.
以下代码是一个短引导加载程序,应该打印"TEST"消息3次,然后跳转到同一位置挂起:
[BITS 16]
[ORG 0x7C00]
jmp 0x0000:start_16 ; In case bootloader is at 0x07C0:0x0000
start_16:
xor ax, ax
mov ds, ax
mov es, ax
cli ; Disable interrupts
mov ss, ax
mov sp, 0x7C00
sti ; Enable interrupts
cld ; Clear Direction Flag
; Store the drive number
mov [drive_number], dl
; Print message(s)
mov si, msg
call print_string
mov si, msg
call print_string
mov si, msg
call print_string
jmp $ ; HALT
; …Run Code Online (Sandbox Code Playgroud) 我对编程很陌生,但我已经为计算二次方程等数学问题做了很好的库.现在我遇到了一个朋友,他在VB中编程了一点,我们在想是否可以将我的函数从C++导入到他的代码中,这样他就可以在需要时调用它们,这样我们就可以编写一个计算器了?我们怎么做?
编辑:我的朋友正在使用VB.net编辑:我的图书馆是按免费功能组织的.
我正在制作一个基于XOR的en/decryptor,就像这样工作.你有一个明文字符,例如3,和一个用户密钥,例如5.写入位:
3 = 00000011
5 = 00000101
Run Code Online (Sandbox Code Playgroud)
现在,如果我们进行XOR操作,我们得到6:
6 = 00000110
Run Code Online (Sandbox Code Playgroud)
这可以通过说6 XOR 5(即3)来反转.
所以我做了这个程序.但它确实有错误,它不会正确翻译文本,并且它会在文件的末尾添加许多字符,具体取决于您使用的是哪个键.
using namespace std;
int main(int argc, char *argv[])
{
char buffer[5001];
ifstream fin("a.txt", ifstream::in);
ofstream fout("b.txt");
int key;
char znak;
// console
cout << "Key: ";
cin >> key;
fin.get(znak);
while(!fin.eof() && znak != ' ')
{
fin.get(buffer, sizeof(buffer));
}
for(int i = 0; i < sizeof(buffer); i++)
{
fout << function(key, buffer[i]);
}
cout << "done" << endl;
cin.get();
return 0;
}
char function(int …Run Code Online (Sandbox Code Playgroud) c++ ×4
assembly ×1
bios ×1
bootloader ×1
compression ×1
directx ×1
encryption ×1
osdev ×1
vb.net ×1
x86 ×1
xor ×1