本文目錄一覽:
- 1、c語言中將一個數組的值賦給另外一個數組,好像要用指針來賦值
- 2、c語言中如何把一個數組賦給另一個數組啊?
- 3、c語言中將一個數組的值賦給另外一個數組,好像要用指標來賦值
- 4、c語言中怎麼把一個數組的值賦到另一個數組中?
- 5、C語言中如何把一個數組的值賦給另一個數組 急!!!!!
- 6、c語言中怎麼把一個數組的值賦到另一個數組中
c語言中將一個數組的值賦給另外一個數組,好像要用指針來賦值
錯誤的,不能用賦值語句將一個字元串常量直接給一個字元數組賦值。
chars[20];
charss[]=”hello”;
s=ss;錯誤原因是:是您不能使用賦值語句將一個字元數組直接賦值給一個字元串數組,也就是說,必須使用strcpy()函數來實現一個字元串的副本(在c語言中,但是在c++的string類中,上面的賦值是正確的)。
因為賦值字元「=」右邊的表達式也可以是賦值表達式,下面的形式變數是=(變數=表達式);這是真的,所以它是嵌套的。展開後的一般形式為:variable=variable=…=表達式;例如:a=b=c=d=e=5;根據賦值運算符的正確嚙合,其有效等價為:e=5;D=e;C=d.B=C.A=B;
Chara[]=”toyou”;正確的理由:因為當你聲明一個數組變數時,你只是為它騰出空間並初始化它,這是c語法。
擴展資料:
C語言中字元串賦值的理解
一、指針式賦值
上面的例子很明顯,也很容易理解。但是下面的方法有點難以理解。
通過程序的運行,我們可以知道:char*p=”hello”;這個字元串賦值非常好。為了理解這個賦值,我們首先需要理解雙引號在這個語句中的作用(注意:這是雙引號,不要使用單引號)。雙引號有三個主要作用:
(1)申請了空間(在常量區),存放了字元串。
(2)在字元串尾加上了「\0」。
(3)返回地址。
這裡所返回的地址就賦值給了char*類型的指針變數p。
二、通過字元數組直接把字元串賦值。程序如下:
三、需要注意的一些問題
直接把字元串賦值給數組名(也就是數組首元素的首地址)是不行的。
c語言中如何把一個數組賦給另一個數組啊?
第一個問題,用for循環吧第一個數組的值
給第二個,
第二個問題,可以,完全可以,第一個矩陣剛好是第二個的轉制矩陣,當然可以了。
c語言中將一個數組的值賦給另外一個數組,好像要用指標來賦值
c語言中將一個數組的值賦給另外一個數組,好像要用指標來賦值
用不用都可以。
#include “stdio.h”
void main()
{
int a[]={0,1,2,3,4,5,6,7,8,9},b[10],c[10];
int i,*p=a;
for(i=0;i10;i++)
b[i]=a[i]; 不用指標賦值。
for(i=0;i10;i++)
c[i]=*(p+i); 用指標賦值。
for(i=0;i10;i++)
printf(“%d “,b[i]);
printf(“\n”);
for(i=0;i10;i++)
printf(“%d “,c[i]);
printf(“\n”);
}
如何將一個數組賦值給另外一個數組
(1)字元陣列相當於字串,可以用標準函式strcpy()直接進行字串複製。
比如 把c【】複製到a中就【】可以這樣用:strcpy(a,c);
這個函式包含在標頭檔案 string.h中.
(2)單個複製
for(int i= 0; i 2; ++i)
{
b[i] = a[i];
}
有兩種方法可以實現。 1 逐個賦值法。 採用迴圈,逐項賦值。 以整型為例,int a[10], b[10]; 要把a的值賦值給b,可以寫作 int i; for(i = 0; i 10; i ++) b[i] = a[i]; 2 整體複製法。 利用C語言庫函式memcpy可以整體複製。memcpy宣告與string
C語言中,怎麼把一個數組的前幾個元素賦值給另外一個數組?
最簡單的: s2[0]=s1[0]; s2[1]=s1[1]; s2[2]=s1[2];
或者你用迴圈: for(int i=0;i3;i++)s2[i]=s1[i];
把一個數組完全賦值給另外一個數組的語句(c語言)?
完全賦值??
b=a;
即可。
當然,要用你上面的寫法的話,必須
b[i][j]=a[i][j];
你上下標都不一樣,值當然不同啦。
C語言中如何把一個數組的值賦給另一個數組 急!
第一個問題,用FOR迴圈吧第一個陣列的值 給第二個,
第二個問題,可以,完全可以,第一個矩陣剛好是第二個的轉制矩陣,當然可以了。
php 怎麼將一個數組 作為另外一個數組的值
array_bine() 建立一個數組,用一個數組的值作為其鍵名,另一個數組的值作為其值
如何將一個數組的值賦值給另一個數組
為方便說明,定義兩個整型陣列a,b,並實現將a中的值賦值到b中。
int a[4] = {1,2,3,4}, b[4];
1、 通過陣列遍歷,逐個賦值。
定義迴圈變數int i;
for(i = 0; i 4; i ++)
b[i] = a[i];
該程式功能為遍歷陣列a,逐個賦值到陣列b對應元素中。
2、 藉助記憶體複製函式memcpy,整體賦值。
void *memcpy(void *dst, void *src, size_t size);
這個函式的功能為將src上,大小為size位元組的資料賦值到dst上。
呼叫該函式時需要引用標頭檔案cstring,即
#include cstring
賦值陣列的程式碼為
memcpy(b,a,sizeof(a));
javascript中如何把一個數組的內容全部賦值給另外一個數組
將小陣列的值迴圈賦值給大陣列,如果大陣列未滿,繼續迴圈賦值。或者直接一個迴圈(大陣列的長度作為迴圈限制)賦值到小陣列完,重置小陣列的index為0,直到大陣列全部賦值完。
【相關拓展】
第一種用for迴圈:
1
2
3
4
int[] x={1,2};
int[] y=new int[2];
for(int i=0;ix.length;i++){
y[i]=x[i];
第二種用java提供的arraycopy
1
2
3
int[] x={1,2};
int[] y=new int[2];
System.arraycopy(x, 0, y, 0, x.length);變數依次是(原陣列,從原陣列第幾位開始,目標陣列,從第幾位開始貼上,複製長度)
java怎麼把一個數組的值迴圈賦值給另外一個大陣列
String [] arrA = {“a”,”b”,”c”,”d”};
String [] arrB = new String[10];
if(arrA.length 0 arrB.length 0){
for(int i = 0; i arrB.length; i++){
arrB[i] = arrA[i % arrA.length];
}
}
for(String str: arrB){
System.out.println(str);
}
c語言中怎麼把一個數組的值賦到另一個數組中?
#include “stdio.h”
void fun1(double str1[],int length) {
int i, j;
double temp;
for(i = 0; i length; ++i) {
for(j = length – 1; j i; –j) {
if(str1[j] str1[j – 1]) {
temp = str1[j];
str1[j] = str1[j – 1];
str1[j – 1] = temp;
}
}
}
for(i = 0; i length; ++i) printf(“%.1f “,str1[i]);
}
void fun() {
double str[]= {-53,22,223,100,18.0,309,-10,209,101,900,-77,50};
fun1(str,sizeof(str)/sizeof(str[0]));
}
int main() {
fun();
}
C語言中如何把一個數組的值賦給另一個數組 急!!!!!
strcpy(a,b);是把b字元串複製到a中.只能用於char型.
數組傳遞,可以用循環語句,一個元素一個元素賦值,也可用指針賦值.
還有方法是內存塊複製:
void
*memcpy(void
*s1,
const
void
*s2,
size_t
n);
c語言中怎麼把一個數組的值賦到另一個數組中
在回答之前想問你幾個問題。
#include iostream.h
void main()
{
double b1[5][2]={3,4,1,2,2,1,5,3,4,5};
double rel[5][2]={0};
double rel_1[5]={0.0667,0.1905,0.3143,0.4381,0.5619};
int l=0,j,i;
double *p_rel_1=rel_1;
for (i=0;i5;i++)
{
for (j=0;i2;j++)
{
l=(int)(n-b1[i][j]);//n是什麼?
rel[i][j]=*(p_rel_1+l);
rel[i][j]=1;
l=0;
}
}
delete p_rel_1;
for (i=0;i5;i++)
{
for (j=0;i2;j++)//中間那個i在這裡有什麼用?
{
printf(“rel[%d][%d]=%.4lf “,i,j,rel[i][j]);
}
printf(“\n”);
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/305251.html