C语言/C++ 教程

C语言/C++ 教程:包含了所有代写案例以及部分答案

  • 副标题#e# 首先我要在这里向列位更正我犯在一个错误:Base64 只是MIME的一种编码方案,我本来所说的 MIME 其实是MIME的另一种编码方案 — Quoted-Printable ,所以我对本文作了一些批改,并对由此而给各人带来的误导暗示歉意。 May.6-01 最近在研究 POP3 时遇到一个问题,即个中的中文都是颠末 MIME 编码了的,如 MS Outlook Express 是用 Base64 ,而 FoxMail 则用的是QP ,原来想找几个现成的编码/解码的代码 … 继续阅读“MIME和BASE64编码/解码措施代码”

    :
  • 副标题#e# 什么是布局体? 简朴的来说,布局体就是一个可以包括差异数据范例的一个布局,它是一种可以本身界说的数据范例,它的特点和数组主要有两点差异,首先布局体可以在一个布局中声明差异的数据范例,第二沟通布局的布局体变量是可以彼此赋值的,而数组是做不到的,因为数组是单一数据范例的数据荟萃,它自己不是数据范例(而布局体是),数组名称是常量指针,所以不行以做为左值举办运算,所以数组之间就不能通过数组名称彼此复制了,纵然数据范例和数组巨细完全沟通。 界说布局体利用struct修饰符,譬喻: struc … 继续阅读“C/C++中的布局体”

    :
  • 副标题#e# 函数存放在内存的代码区域内,它们同样有地点,我们如何能得到函数的地点呢? 假如我们有一个int test(int a)的函数,那么,它的地点就是函数的名字,这一点如同数组一样,数组的名字就是数组的起始地点。 界说一个指向函数的指针用如下的形式,以上面的test()为例: int (*fp)(int a);//这里就界说了一个指向函数的指针 函数指针不能绝对不能指向差异范例,可能是带差异形参的函数,在界说函数指针的时候我们很容易犯如下的错误。 int *fp(int a);//这里是 … 继续阅读“C/C++中函数指针的寄义”

    :
  • 副标题#e# 在这个信息爆炸的时代,我们不得差池信息的安详提高鉴戒。加密作为保障数据信息安详的一种方法,越来越受到人们的存眷。 下面,我将把本身对Microsoft CryptoAPI的一些浮浅的领略与各人共享,有什么不当之处望不惜见教。 一、 加密要领: 当初,计较机的研究就是为了破解德国人的暗码,人们并没有想到计较机给本日带来的信息革命。跟着计较机的成长,运算本领的加强,暗码学已经取得了庞大的希望。概略来说有以下几种形式。 1、 公用密钥加密技能 加密息争密利用差异的密钥,别离叫做&ldqu … 继续阅读“Microsoft CryptoAPI加密技能(一)”

    :
  • 对付浩瀚人提出的c/c++中指针难学的问题做个总结: 指针进修欠好要害是观念不清造成的,说的简朴点就是书没有当真看,指针的进修犹如人在进修饶口令不多看多学多练是不可的,下面是两个很经典的例子,许多书上都有,对付进修的重点在于领略*x和x的领略,他们并不沟通,*x所暗示的其实就是变量a自己,x暗示的是变量a在内存中的地点,假如想大白可以输出调查cout<<*x"|"x;,当界说了int *x;后对x=&a的领略的问题。仔细阅读和接洽下面的两个例子我想指针问题 … 继续阅读“c/c++中指针进修的两个绝好例子”

    :
  • const修饰符可以把工具转酿成常数工具,什么意思呢? 意思就是说操作const举办修饰的变量的值在措施的任意位置将不能再被修改,就如同常数一样利用! 利用要领是: const int a=1;//这里界说了一个int范例的const常数变量a; 但就于指针来说const仍然是起浸染的,以下有两点要十分留意,因为下面的两个问题很容易夹杂! 我们来看一个如下的例子: #include <iostream>using namespace std;void main(void){const … 继续阅读“C++中的const限定修饰符”

    :
  • 副标题#e# F1   辅佐 Alt+F2 终止措施运行(出格是调试时很有用) F3   查找下一个功效(和Ctrl+F共同利用) F5   配置/打消断点 Ctrl+F5 配置Watch变量 F7   跟踪(进入子措施) F8   单步(不进入子措施) F9   运行 Ctrl+F9 编译但不运行 F11   切换工具调查器(Object Inspector) F12   切换Form和代码编辑窗口 Ctrl+F 搜索 Ctrl+R 替换 Ctrl+K+B Marks th … 继续阅读“C++ Builder的快捷键”

    :
  • void __fastcall TMainForm::RichEditMouseMove(TObject *Sender,TShiftState Shift, int X, int Y){if(RightButtonFlag)  {  if(RightY>(Y+8))   {   RightY=Y;   SendMessage(RichEdit->Handle, EM_SCROLL, SB_LINEDOWN, 0);   }  else if(RightY<(Y-8))   { … 继续阅读“TRichEdit右键滚屏代码”

    :
  • 尺度措施库问题,再谈list的迭代器是否可以随机移动? 上篇文章中的"list的迭代器是否可以随机移动?"问题的回首: 由于list的内部实现是双向链表,链表就要求迭代器(指针)只能依次从前向后(或从后向前)移动,依次移动一个位置,因此list只界说了++和–操纵符,而没有界说+、-、+=和-=等操纵符。所以要想list的迭代器移动一段间隔,就需要本身编程实现,用一个小轮回就行了,代码如下: #include <list>using namespace … 继续阅读“C++/VC++编程疑难问题及解答(二)”

    :
  • 摘要:本文提要性地先容如何选择正确的计策来为用户界说范例重载 + 操纵符。 用户界说的范例,如:字符串,日期,复数,连系体以及文件经常重载二元 + 操纵符以实现工具的毗连,附加或归并机制。可是要正确实现 + 操纵符会给设计,实现和机能带来必然的挑战。本文将提要性地先容如何选择正确的计策来为用户界说范例重载这个操纵符。 思量如下的表达式:int x=4+2; 内建的 + 操纵符有两个范例沟通的操纵数,相加并返回右值 6,然后被赋值给 x。我们可以断定内建的 + 是一个二元的,对称的,可互换的操纵符 … 继续阅读“C++中重载+操纵符的正确要领”

    :