1樓:王無葉
樓主,雖然你把size直接改成了8,但是還是錯的,因為錯不在size,而是不能將int size=sizeof(array)/sizeof(int);這個語句放在要用到它的函式裡(具體到你這個問題,就是func1,func2),你把這句話放在了func1和func2裡面,必然不能執行成功。原因如圖所示:
你可以在func1和func2裡面刪掉這個語句,然後把size改成8,就可以得到正確的執行結果01234567了,不過如果你實在很想用
int size=sizeof(array)/sizeof(int);這句話的話,可以像下面這樣改:
#include "iostream.h"
void func1(int *array,int size);
void func2(int *array,int size);
int main()
int array[8];
int size=sizeof(array)/sizeof(int);
func1(array,size);
func2(array,size);//輸出函式
return 0;
void func1(int *array,int size)
for (int i=0;iarray[i]=i;
void func2(int *array,int size)
for(int i=0;icout<不知道我說明白沒有,如果還有疑問可以hi我。
2樓:
func1函式和func2函式中
sizeof(array)固定等於4!
要知道傳入的陣列元素數目,必須增加一個函式引數,指出其大小.
那我再補充一下:
你的func1函式中,沒有給array[0]賦值.
輸出的時候,自然是不對的啦,呵呵
3樓:果建翼
你兩個函式裡面的這一句是明顯錯的:
int size=sizeof(array)/sizeof(int);
array是int*型別,是個指標,sizeof(指標)是一個恆定大小,在32位下等於4,根本無法求出陣列長度。
你應該修改func1和func2的定義,在引數中增加一個int size,把陣列的大小從外面傳進來才可以。或者乾脆把陣列換成vector(這也是c++的推薦做法):
先#include
然後int array[8]變成std::vectorarray(8);
函式定義中的int *array換成std::vector& array
然後你就可以通過使用array.size()來獲取陣列的大小了。
c++怎麼定義中文?比如int a;如果把a改為一箇中文,該用什麼來定義呢?
4樓:金色潛鳥
變數名不能改為中文。c/c++程式還只能用英文。
列印的字串,可以用中文(但並非所有編譯器都支援中文)。
變數的值,等於中文編碼值是可以的。gb,big5,hz,utf-8 不同編碼碼值不同。
5樓:匿名使用者
c++中的函式怎麼在裡面自己定義比如f(int**a,int**b)...檢視同主題問題:函式定義c++函式其他共1條定義一個函式你...
6樓:匿名使用者
string a="大撒旦";
c++程式設計語言 這本書怎麼樣
7樓:靜心先生
很簡略,少了很多重要東西,而且對於實戰不多大幫助,建議學習c++ primer
8樓:不準飛昇
哪個版本?這種書多了去了
如何用c++讀取並修改txt檔案
9樓:開開新新
1、c語言標準庫提供了一系列檔案操作函式。檔案操作函式一般以f+單詞的形式來命名(f是file的簡寫),其宣告位於stdio.h標頭檔案當中。
例如:fopen、fclose函式用於檔案開啟與關閉;fscanf、fgets函式用於檔案讀取;fprintf、fputs函式用於檔案寫入
c++一個函式如何呼叫另一個引數不同的函式
10樓:匿名使用者
一個事件函式呼叫另一個事件函式?這種設計大有問題,如果做正式專案會造成業務邏輯混亂。
你的目的是什麼?是點了checkbox按鈕後自動去點button?
如果是這樣,設計思路是不對的,你這個是在模擬人機互動。
正確的思路是寫一個按下按鈕時需要執行的獨立處理函式,然後兩個事件都呼叫它。
下面是偽**:
//按鈕事件
void buttonfunc(ccobject* psender, toucheventtype ttype)
//勾選事件
void checkboxfunc(ccobject* psender, checkboxeventtype ctype)
//按鈕點選處理函式
void private buttonclickprocess(bool isclick)}
11樓:
這是 cocos2d ??滿滿的即視感啊
函式呼叫都不會麼 ?直接填寫函式名稱和函式引數就可以了
鄂爾多斯的阿鎮離爾多斯的新街有多遠
駕車路線 全bai程約48.4公里 起點du 阿鎮汽車站 1.從起點向zhi正東方向出發dao,沿文明西街輔內路行駛1.9公里,進容入通格朗路 2.沿通格朗路行駛830米,直行進入通格朗街 3.沿通格朗街行駛700米,朝迎賓大道 金桌街 那達慕運動場方向,直行進入迎賓大道 4.沿迎賓大道行駛8.6公...
賽季阿賈克斯轉會,阿賈克斯的蘇亞雷斯的技術特點怎麼樣?他有沒有來五大聯賽踢球的可能?
我提供的是現在阿甲克斯的陣容名單,由於有一些球員是剛剛轉會而來,球衣號碼還沒有確定.門將 1.斯特克隆博格 30.吉安特納爾 號碼未確定 希約布勞克 後衛 號碼未確定 羅伯特 斯基德爾 3 斯塔姆 4 海廷加 5 埃馬努爾森 15 托馬斯 沃梅林 15 林德博格 20 奧加拉魯 31 尤爾根 科林 ...
阿爾忒彌斯怎麼讀,阿爾忒彌斯的讀音
阿爾忒彌斯中文讀音為 r t m s 聲母分別是版a e t m s,韻母分別是r e i i 第一權個拼音沒有 韻母 英文為artemis,讀音為 rt m s 阿爾忒彌斯是古希臘神話中的狩獵女神,被稱為 野獸的女主人與荒野的領主 奧林匹斯十二主神之一。亦是宙斯 zeus 和勒託 leto 之女,...