C語言中如果將指標所指向的字串賦給陣列

2021-03-10 21:40:22 字數 909 閱讀 8147

1樓:匿名使用者

陣列宣告的時候就

抄要指襲定大小的

可以用memcpy,對於字串,也可以用strcpy或strncpy(需要包含string.h)

比如:char *p="abc";

char a[10];

memcpy(a,p,sizeof(a));

或者strcpy(a,p);

或者strncpy(a,p,sizeof(a));/* 比上面的strcpy安全 */

ps:關於sizeof,取陣列的時候是陣列的大小,指標的話,32位機器,會是4,所以字串指標不用sizeof取長度,用strlen();

2樓:匿名使用者

用strcpy函式

或者memcpy函式

另外char a;

不能這麼定義。

感覺你連最基本的定義都沒有概念。

3樓:匿名使用者

char a;

這一句本身就是錯誤的 必須得有初始化式

樓上那位 你不是吧a是乙個指標常量能賦值嗎?只能是這樣了char a[4];

strcpy(a,p);

4樓:一掠流星

char *q = p;

int i = 0;

while (*q != '\0')

c語言 怎麼把指標的值 賦給另乙個陣列

5樓:匿名使用者

迴圈賦值,來 或者直接自strcpy。 因為這裡是字串。

比如#include

int main()

int fun(int *p)

6樓:聖吻之櫺

for迴圈!!偷懶不了這個

c語言中字元陣列和字元指標的問題

在函式內 char陣列被定義成局 部變數,函式執行後會被系統給釋放掉。但char p 則是定義成乙個常量,程式執行完後才會釋放掉。所以在返回char p 時會返回亂碼,但 char p 則可以全部顯示出來 當然 char 也可以定義成靜態變數 這樣就可以顯示出來了不如static char p he...

C語言中定義函式,變數是指向指標的變數,呼叫時要怎麼呼叫

首先fact函式返回的是double型別,第乙個引數是double型的二維指標.所以是 c i fact c,y,z 因為double c 3 是二維double指標,c i 是乙個double一維指標,c i 就是double型資料。c是二維指標,可以傳過去 c i fact c,y,z c i ...

關於c語言中的指標問題,關於c語言中的指標問題。

char p heir 這句話包含了2層意思,一是定義乙個指標變數p,即 char p 二是為指標變數p賦初值,即 p heir 實際是將存放字串 heir 的記憶體位址賦給p 因此這句話實際上等價於 char p p heir char p heir 這個表示定義字元指標變數p,並將存放字串 he...