1樓:匿名使用者
#include
void main()
//已此類推...int就把char改成int double就把.char改成double
就可以看到了
2樓:飄渺世間天
#include
#include
using namespace std;
#define typeinfo(_type_) \cout << setw(15) << #_type_": " << setw(2) << sizeof(_type_) << " byte(s). ";\
cout << setw(3) << sizeof(_type_) * 8 << " bits.\n"
int main()
3樓:
#include
using namespace std;
#define a(s) sizeof(s)#define m 100
void main()
4樓:匿名使用者
sizeof 運算子就可以輸出來
5樓:奇妙百貨鋪
例:cout << sizeof(long int) << endl;
關於c++類的一道題目
6樓:匿名使用者
首先是全域性物件base base1(5);的初始化base base1(5);呼叫建構函式base::base(int i):m_i(i)
,傳入的引數i為5,所以列印出step 5
進入main函式執行,第一句是printf("step 1\n");,所以列印出step 1
宣告base *a,呼叫建構函式,傳入的引數i為4,所以列印出step 4
執行delete a會呼叫到解構函式base::~base()
因為構造a的時候指定了m_i的值為4,所以這裡列印出step 4
程式結束會釋放全域性物件base1 ,會呼叫到base1的解構函式,base1的m_i是5,所以列印出step 5
手打不容易,給分吧
7樓:匿名使用者
全域性構造 》 main()構造 》 main()析構 》 全域性析構
step1是printf輸出,與類沒關係;分界點
8樓:
關於物件的生命週期
這裡說的很詳細
9樓:葉顒
#include "stdafx.h"
using namespace std;
//類data,t它可以是任何型別,但不知道具體用什麼型別,用t代替,其他人想用函式時,具體告訴t是什麼型別就好了
template class data
};template t data::sum() //類data的成員函式,t可為任意型別
關於c++的一道題目,跪求大神,師兄師姐解答,學渣感激不盡
10樓:當你開心請
//你的演算法不太對,可以藉助陣列來實現
#include
#include
void main()
{int newx=0,k,p,j,i=0;
unsigned long x,a;
int b[80];
cout<<"x=";
cin>>x;
cout<<"k=";
cin>>k;
a=x;p=k;
while(x>9)
{j=i++;
b[j]=x%10;
x=(x-b[j])/10;
if(x<9)
b[i]=x;
//cout
{cout<<"newx is "<
11樓:匿名使用者
else if(i=k)
其中newx=newx+a*b;應當取掉。
12樓:匿名使用者
你應該將else if(i==k)好吧 ,你這裡寫的也是錯的 是==,不是=
將else if(i==k)作為第一個條件if(i==k)else if(i c++的一道題目? 13樓:老馮文庫 #include #define n 10000 using namespace std; int main() cin>>key; for(i=0; i }if(i < n) else return 0; 執行測試: 14樓:小黑哎啊 #include using namespace std; int main() int n,k,first=0,f=0; int a[111]; cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; cin>>k; for(int i=1;i<=n;i++)if(a[i]==k) f=1; first=i; break; if(f==1) cout cout<<"-1"; return 0; c++的一道題目 15樓:匿名使用者 #include #include using namespace std; bool isprime(int); int main() ofstream out("math.out"); int n; in>>n; int x=2; for(;x <<"no way"; return 0; }bool isprime(int x) c++的一道題目 16樓:匿名使用者 「return 200,100;」語法錯,編譯時會有警告性出錯資訊。 17樓:夕陽武士 逗號相當於一個並列運算,返回值為逗號之後的表示式.所以這裡返回的是100. 18樓: 返回值是:100; return 語句後面跟著的是一個逗號表示式(200,100)。 逗號表示式的格式為:表示式1,表示式2,表示式3,...... ,表示式n (1) 逗號表示式的運算過程為:從左往右逐個計算表示式。 (2) 逗號表示式作為一個整體,它的值為最後一個表示式(也即表示式n)的值。 (3) 逗號運算子的優先順序別在所有運算子中最低。 這裡的n=2,所以逗號表示式(200,100)的值為:100 19樓:匿名使用者 100逗號返回最右邊的值 關於c++中動態記憶體問題的一道題目 20樓:標苦運先 關鍵在於getmemory(char *p)使用指標引數p傳遞地址,而不是char *&,所以按照引數傳遞的「by value」語義,getmemory內部使用的p和呼叫時傳入的引數str不是一個物件,兩者的關係僅僅在於「p和str的內容相同」(這裡,就是兩者指向的地址相同)。 但是getmemory只是改變了p的內容,與str不相干! 21樓:皇家救星 你如果理解了指標的含義就會明白了,指標其實是一個長整型,他代表了記憶體的一個地址,通過這個長整型就能訪問到存放在該地址中的變數 在理解了這點的基礎上,將程式改寫成這樣 void getmemory(long p)void test(void) 你會看到str的值其實從頭到尾沒有變過,指向0地址而0地址是不允許你寫的,所以程式會崩潰 解決方法書上有說,你慢慢翻會看到的 ------------------------------------------- 當然,現在記憶體越來越大,有些指標並不是長整型了,而是雙字,或者更大的型別 22樓:匿名使用者 標苦運先說正確了. void getmemory(char *p)中:指標p是一個區域性變數,你讓它指向100個char記憶體的首地址,函式退出後,p銷燬,而且實際引數str根本跟p不是一個東西,因為你是傳值(雖然表面看起來是指標)呼叫函式,然後這段記憶體就無法操作了,導致記憶體洩漏. strcpy(str, "hello world"); 因為你的str=null; 即被視為沒有指向任何物件,所以對它的操作將使程式崩潰.(因為不知道該把"hello world"往哪個地方寫) 如果str指向了一段記憶體,但這段記憶體的大小小於"hello world",那麼會造成堆溢位.即使程式不崩潰,那也或許會執行時出錯.或者可能被惡意攻擊. include include using namespace std void main cout cout 字元數為 因為eof的值要在讀到最後一個字元後再讀一次發現沒有了才會變成true,而這一次之後如果你再輸出一次就會把前一次讀進來的值輸出,成了11個。這裡,你上一次讀入的數就是0,而這次讀... 還請樓主耐心去看,雖然沒有分,但學習的精神還是在的。不會的可以繼續問哦。第一條語句 point p1 10,20 執行的建構函式是point int x 0,int y 0 因此輸出call the default constructor 第二條語句 point p2 p1 執行的是第二個建構函式p... 二進位制數不能像十進位制那樣 d直接輸出。如果想輸出一個數的二進位制可以通過函式把其轉成2進位制字串再將其輸出。itoa函式 原型 char itoa int value,char string,int radix 引數 int value 被轉換的整數,char string 轉換後儲存的字元陣列...一道關於C 統計字元的題目
關於C 的一道題
問一道C語言的題目,問一道C語言題目