关于C++/C中符号
生活随笔
收集整理的這篇文章主要介紹了
关于C++/C中符号
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天朋友問到一個問題,例如下面的代碼:
#include <stdio.h>int main() {typedef int* testPtr;int i = 7;int* p = &i;printf("first time *p is %d, i is %d\n", *p, i);testPtr &q = p;printf("second time &q=p *q is %d, *p is %d, i is %d\n", *q, *p, i);*q = 70;printf("third time *q = 70 *q is %d, *p is %d, i is %d\n", *q, *p, i);return 0; }輸出的結果為:
?
?
如果把同樣的文件test.cpp 改為test.c 編譯的結果如下:
?
編譯不過,同時我將testPtr &q = p; 改為int* &q = p; ?報同樣的錯誤
?
結論:testPtr &q = p; ? ?在C++中才合法,其中q是p的別名,所以才有上面的結果
?
補充一下在ubuntu里安裝g++的過程
sudo apt-get install g++ 提示如下錯誤:
于是按照如下解決:
<1>sudo apt-get install aptitude
<2>sudo aptitude install g++
終端中輸入后會提示aptitude給出的解決方案,你可以選擇no,會繼續提供下一個解決方案,一般前面的方案會是忽略掉依賴沖突,所以想要徹底解決的話可以跳過前面的幾種方案,然后再yes解決
?
轉載于:https://www.cnblogs.com/lifeng-blog/p/7462686.html
總結
以上是生活随笔為你收集整理的关于C++/C中符号的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用redis作为Return存储方式
- 下一篇: const 在C++中的区别