-
有太多的問題要向你解釋,但這是正確的寫法。
#include
#include
#include
char *a(char *b,int length){char *fanhui;
faihui=(char *)calloc(length,1);
int i=0;
while(*(b+i)!='\0'){
fanhui+i)=*(b+i);
i++;fanhui+i)='\0';
return fanhui;
int main(){
char shuzu1[20],*shuzu2;
gets(shuzu1);
int length=strlen(shuzu1)+1;
shuzu2=a(shuzu1,length);
puts(shuzu2);
free(shuzu2);
return 0;
-
while(b)這句話肯定是有問題的。
而(*b)這樣你應該沒問題。
否則,b 是整數位址,永遠不能為 0
這變成了乙個無休止的迴圈。
-
Fanhui 是乙個指標,沒有初始值。 那麼範輝指向哪裡呢?
執行時 *(fanhui+i)=*(b+i); ,就是fanhui+i所指的地方,不知道指向哪裡,要改變他的值,那結果只能是錯的......樓上**是正確的...
-
1.選擇 a,*p; 定義乙個整數變數 a 和乙個整數指標 p; 因此 p=&a;p 可以儲存 A 的位址。
2.選擇 a,*p=&a;由於 a 是乙個變數,因此不存在 *a 這樣的東西。
3.選擇“未定義的錯誤”。 C 是正確的,P1、P2 和 P 是整數指標。
是乙個整數變數,p 是一級指標 a 的位址。 q 是二級指標 p 的位址。
指向 null。 因此,A是錯的,B是正確的,即A是賦值的,C是錯的,A是整數變數,D是錯的,不能為變數A更改位址空間。
q=*p 錯誤,指向未知位址的 q 未初始化。 b,沒有符號。
c,與錯誤相同。 d 正確。 A 被賦予了 b 的值,但 b 的值未初始化且不確定。
-
p 是乙個指標,位址儲存在指標中,所以如果希望指標指向 a 的值,則需要在 a 前面新增乙個位址符號。
-
1.p代表位址,a代表整數,如果整數要等於位址,就必須加上a&。
計算機專業的學生可以學習嵌入式,這種人才在我國很受歡迎,比如我開發linux才2年工作,月薪已經達到8k以上學習嵌入式單詞 軟體和硬體是有區別的 一般我們有乙個專案開發周期1個月左右, 2名硬體工程師 6名軟體工程師 提醒, 你現在學的 C 啊 C++ 啊 都是基礎程式設計等等 當你做專案的時候,你知道你還學了多少 C 指標、結構體、陣列、C++ 類等等 這是非常基礎和常用的,我建議一條路由 彙編程式設計(很老了,嵌入式的發展一定要了解, 他與計算機硬體有直接的聯絡,是開發大型程式的基礎) - 資料結構(是高質量程式設計的基礎) - 作業系統,計算機組合我不希望Microsoft的東西是開源的)——跟著老師開發專案,積累更多的經驗。觀察和練習,當你有10w線的程式設計時,你幾乎可以應付一些中小型專案。 >>>More