在main.cpp里输入程序如下: #include <iostream> //使能cin(),cout(); #include <iomanip> //使能setbase(),setfill(),setw(),setprecision(),setiosflags()和resetiosflags(); //setbase( char x )是设置输出数字的基数,如输出进制数则用setbase(8);如输出进制数则用setbase(10);如输出进制数则用setbase(16); //setbase( char x )的参数x只能是,10和,其它参数无效,setbase对其后的cout都有影响;
//当程序需要在屏幕上显示输出时,可以使用插入操作符“<<”向cout输出流中插入字符; //例如: cout<<"I love C++\n"; //当程序需要执行键盘输入时,可以使用抽取操作符“>>”从cin输人流中抽取字符; //例如: int myAge; cin>>myAge; //I/O流的常用控制符如下: //dec 置基数为; //hex 置基数为; //oct 置基数为; //left 左对齐 //right 右对齐 //setiosflags(ios::left) 左对齐,left位于ios文件中 //setiosflags(ios::right) 右对齐,right位于ios文件中 //setiosflags(ios::uppercase) 控制进制数大写输出 //resetiosflags(ios::uppercase) 控制进制数小写输出
//setfill(c) 没填充字符为c,对其后的cout都有影响; //setw(n) 设置值的输出宽度为n个字符,仅仅影响下一个数值输出;
//setiosflags(ios::showpos) 强制显示正负号,对于浮点数和十进制数,正数将显示+; //setiosflags(ios::fixed) 固定以小数方式显示 //setiosflags(ios::showpoint) 若只有整数部分,则强制显示小数点; //setprecision(n) 设置浮点数小数点后有n位小数; //setiosflags(ios::scientific) 指数表示; //注意:在使用setiosflags()之后,一定要使用resetiosflags(()恢复到默认设置;否则,会出现意想不到的错误; //例如:在cout<<setiosflags(ios::fixed)被使用完后,要调用cout<<resetiosflags(ios::fixed)恢复到默认设置; //注意:cout<<setiosflags(ios::lowercase); //控制进制数小写输出,在Visual studio C++2005中,不支持该语句; //在不使用#include<iomanip>时,cout.setf(ios::right); //设置为右对齐输出; //浮点数默认显示位有效位;
using namespace std; //告诉编译器使用std标准程序库;
unsigned char Add(const unsigned char *p1,const unsigned char *p2); //声明函数Add();
int main() { unsigned char *ptr1; //声明指向unsigned char型存储空间的指针ptr1; ptr1=new unsigned char[5]; //声明一个unsigned char型数组,其大小为5; unsigned char *ptr2;//声明指向unsigned char型存储空间的指针ptr2; ptr2=new unsigned char[5]; //声明一个unsigned char型数组,其大小为5; unsigned char *ptr3;//声明指向unsigned char型存储空间的指针ptr3; ptr3=new unsigned char[5]; //声明一个unsigned char型数组,其大小为5;
int i; for(i=0;i<5;i++) *(ptr1+i)=i+1; //将分配的数组初始化; for(i=0;i<5;i++) *(ptr2+i)=i+5; //将分配的数组初始化; for(i=0;i<5;i++) *(ptr3+i)=Add( ptr1+i,ptr2+i ); cout<<"ptr1"; for(i=0;i<5;i++) cout<<"\t"<< (int)( *(ptr1+i) ); cout<<endl; cout<<"ptr2"; for(i=0;i<5;i++) cout<<"\t"<< (int)( *(ptr2+i) ); cout<<endl; cout<<"ptr3"; for(i=0;i<5;i++) cout<<"\t"<< (int)( *(ptr3+i) ); cout<<endl; delete ptr1; //将指针ptr1所指向的数组存储空间释放掉; delete ptr2; //将指针ptr2所指向的数组存储空间释放掉; delete ptr3; //将指针ptr3所指向的数组存储空间释放掉; return(0); //退出函数; }
unsigned char Add(const unsigned char *p1,const unsigned char *p2) { return *p1+*p2; } |