#includestdio.h
成都創(chuàng)新互聯(lián)是專(zhuān)業(yè)的應(yīng)城網(wǎng)站建設(shè)公司,應(yīng)城接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行應(yīng)城網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
#includeconio.h
main()
{int n,l,t,i;
double a[100],b[100],c[100];
printf(" Please input the order n of matrix a (1): ");
scanf("%d",n);
printf(" Please input the %d elements of matrix a(%d*%d) one by one:\n",n*n,n,n);
for(i=0;in*n;i++)
scanf("%lf",a[i]);
printf(" Please input the %d elements of matrix b(%d*1) one by one:\n",n,n);
for(i=0;in;i++)
scanf("%lf",b[i]);
for(t=0;t=n-1;t++)
{
for(l=0;l=n-1;l++)
{
c[t*(n+1)+l]=a[t*n+l];
}
c[t*(n+1)+n]=b[t];
}
for(i=0;i=n*(n+1)-1;i++)
printf("c[%d]=%lf ",i,c[i]);
puts("\n Press any key to quit...");
getch();
}
這是我把你的程序稍微修改后得到的沒(méi)問(wèn)題了.我把清屏命令去掉了,因?yàn)榫幾g時(shí)不知為什么總說(shuō)clrscr()是一個(gè)未聲明的函數(shù). 另外,要用clrscr和getch需打開(kāi)conio.h. 還有,你程序中的for(l=0;1=n-1;l++)一句里,你把1看成l了,所以變成了死循環(huán)
第一,你可以定義ZZZ[255]為一個(gè)全局變量,然后在里面賦值
byte ZZZ[256];
byte zuhe(byte a[], byte b[], byte c[], byte d[])
{
int i;
for (i=0; i128;i++)
{
zzz[i]=a[i];
}
for (i=128; i192;i++)
{
zzz[i]=b[i-128];
}
for (i=192; i224;i++)
{
zzz[i]=c[i-192];
}
for (i=224; i256;i++)
{
zzz[i]=d[i-224];
}
}
調(diào)用函數(shù)返回值,可以返回一個(gè)變量,可以返回0,和1,但不能返回的是源函數(shù)名。
數(shù)組里面貌似沒(méi)有,只有字符串拼接,不過(guò)這中簡(jiǎn)單的變換你完全可以自己寫(xiě)個(gè)函數(shù)嘛
不用了
strcat把原字符串添加到目的字符串結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
#includestdio.h
int?main(){
unsigned?long?a[4]={0x232323,?0x232323,?0x232323,?0x232323};//字符'#'的ASCII碼為0x23
char?b[16];
char?*p=(char?*)a;
int?i;
for(i=0;?i16;?i++){
b[i]=*(p+i);
putchar(b[i]);
}
return?0;
}
首先你不能直接用靜態(tài)數(shù)組連接,因?yàn)槟銦o(wú)法控制編譯器如何分配內(nèi)存,事實(shí)上分配在堆上的數(shù)組是由操作系統(tǒng)分配的,因此你不能指望兩個(gè)數(shù)組是連續(xù)排列的,所以連接數(shù)組只能重新分配一個(gè)能包容兩個(gè)數(shù)組元素的新數(shù)組,并將兩個(gè)數(shù)組的元素復(fù)制過(guò)去,然后釋放掉原先的數(shù)組。
用動(dòng)態(tài)數(shù)組實(shí)現(xiàn)以下核心代碼:
int?*?Link(int?*a,int?lenA,int?*b,int?lenB)?{
int?*p=new[lenA+lenB];//新建一個(gè)數(shù)組,數(shù)組大小為兩數(shù)組總和
int?*pp=p;//運(yùn)算指針
//復(fù)制數(shù)組不要自己使用循環(huán),那樣效率很低,應(yīng)該采用庫(kù)函數(shù)中的memcpy。
memcpy(pp,a,lenA*sizeof(int));//將數(shù)組a復(fù)制到新建內(nèi)存首地址
memcpy(pp+lenA,b,lenB*sizeof(int));//將數(shù)組b復(fù)制到前數(shù)組尾部
//如果需要,釋放數(shù)組a和b,當(dāng)然如果是靜態(tài)分配的數(shù)組,下面兩句可注釋掉
delete?[]a;
delete?[]b;
return?p;
}
其中sizeof(int)取整型類(lèi)型的字節(jié)寬度,當(dāng)然你可以直接寫(xiě)4,但是不同編譯器不同操作系統(tǒng)int類(lèi)型的字節(jié)寬度可能不同,養(yǎng)成使用sizeof取類(lèi)型寬度可以使你的代碼具有很好的兼容性,減少意外。
復(fù)制后指向會(huì)改變,我們還需要將p返回給調(diào)用者,因此不可以直接使用p進(jìn)行復(fù)制,需要建一個(gè)指針pp,復(fù)制p的值,利用pp復(fù)制數(shù)組。
pp+lenA可以讓pp指向復(fù)制后的數(shù)組a的尾部,在后面的位置復(fù)制b數(shù)組。