我想寫一個響應到一個變量,我不知道該怎麼做。困惑指針?
這不起作用 - 螺絲內存,但沒有保護的錯誤:
for (int i = 0; i < 20; i++) {
list[i] = 'a';
}
同樣的,這一點 - 內存搞砸了:
for (int i = 0; i < 20; i++) {
*(((int*)(list))+i) = 'a';
}
//I don't think this is a string issues as this doesn't help:
//*(((int*)(list))+20) = '\0';
這將導致總線錯誤:
for (int i = 0; i < 20; i++) {
*list[i] = 'a';
}
這可以根據需要工作:
*list = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
我在做什麼錯?
P.S.list
是char**
。
'char **'不是一個字節序列,它是一個指向'char'的指針。你有沒有分配任何內存? – 2011-05-21 19:08:02
你爲這個** list **變量分配了內存,對嗎? – 2011-05-21 19:10:38
我如何分配內存,使其像'* list =「aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa」;'做到這一點? – 2011-05-21 19:12:30