簡體   English   中英

將指針的值分配給指針數組中的指針

[英]Assign value of pointer to pointer in array of pointers

我想將一個字符串中的字符分配給字符串數組中字符串的第一個字符,等效地,我想將一個指針數組中的指針分配給另一個指針的值。

我嘗試了以下方法:

char ** array=malloc(sizeof(char*)*10);
char * str="like";

*(array[0])=*str;
*(array[0])=str[0];
**(array)=*str;
**(array)=str[0];

這些似乎是他們在分配第一個指針的value的值。

我不斷收到細分錯誤錯誤。

我意識到我誤解了創建指針數組時會發生什么。 我以為C實際上是在數組中創建了指針,而不僅僅是為它們分配空間。

解決方法:

char ** array = malloc(sizeof(char *) * 10);
    char tok = *ts; /* create character that has value of a pointer */

    char *token =&tok; /* create new pointer that points to same value as *ts but in a different address */
    array[0]=token; /* assign the pointer */

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM