c怎麼得到lua傳進來的陣列陣列的大謝確定

時間 2021-09-05 17:46:41

1樓:匿名使用者

分兩步走,第一步,c語言如何把資料存到資料庫?方法很多,可以考慮vc的庫函式。 第二步,如何用宿主語言呼叫lua?這方面的資料也不少,我感覺,用c把

c++怎麼傳遞一個陣列到lua

2樓:匿名使用者

陣列的操作,參考例項如下:

陣列其實是一種特殊的**。

int luaarray(lua_state* l);for(int n=0;n

return 1; //push進棧的資料都在設定陣列時自動pop了,所以現在棧裡只有1個資料,就是最開始push的表

}lua獲取剛剛傳的**

array=luaarray()

for i,v in ipairs(array)doprint(v)end

3樓:匿名使用者

lua裡的table和c++裡的陣列差別比較大,我們並不能直接把表簡單的傳過去,所以我們要把陣列轉化成一個table裡可以儲存的方式,因此我們必須遍歷一下c++裡的陣列。

4樓:匿名使用者

只能一個一個壓入 正如樓上所說 c++不存在和lua裡table完全匹配的資料型別

所以我們可以把這個壓入函式寫到lua裡

先在c裡寫一個函式fun

fun把指定的一個全域性變數壓入堆疊

然後把fun註冊到lua裡,假設命名為fun然後在lua裡遍歷表的時候將當前元素賦予那個全域性變數並且呼叫fun這樣做的好處在於 不用每次壓table都要去重新計算table長度當然 只是提供一個思路 如果具體**編寫起來還有困難的話 可以再找我

c++怎麼傳遞一個陣列到lua?

5樓:一騎當後

陣列的操作,參考例項如下:

陣列其實是一種特殊的**。

int luaarray(lua_state* l);for(int n=0;n

return 1; //push進棧的資料都在設定陣列時自動pop了,所以現在棧裡只有1個資料,就是最開始push的表

}lua獲取剛剛傳的**

array=luaarray()

for i,v in ipairs(array)doprint(v)end

在c++中的主函式中,如何定義一個陣列,而這個陣列的大小不確定,大小和數值由使用者從鍵盤輸入?

6樓:阿加莎的三色貓

準確的說,是先使用者輸入 任意的數 temp然後編譯器以temp為陣列大小定義陣列

然後再通過迴圈對陣列的每個成員賦值

順序一定要搞對,陣列大小理論上是不允許動態的,如果動態了,都是錯覺

7樓:匿名使用者

先宣告一個陣列指標 然後根據需要動態分配儲存空間比如int *a;

int n;

cin>>n; //輸入陣列長度

a=new int(n); //動態分配儲存空間//下面就可以對陣列a 進行賦值等操作了

...//最後別忘了用delete釋放儲存空間

8樓:匿名使用者

呵呵int r; //行數

int c; //列數

cout<<"please input the number of rows of the dynamic array: ";

cin>>r; //輸入行數

cout<<"please input the number of columns of the dynamic array: ";

cin>>c; //輸入列數

//建立二維動態陣列

int **p=new int*[r];

for(int i=0;i

cout<<"the array named p["<

9樓:匿名使用者

只能動態分配了啊,別給我說你沒學過。

dobule arr;

int length;

cin>>length;

arr = new double[length];

for(int i = 0; i < length; ++i)cin>>arr[i];

for(int i = 0; i < length; ++i)cout<

delete arr;

c語言中,如何定義大小不確定,由執行時確定大小的陣列

10樓:匿名使用者

#include

#include // malloc, freeint main()

free( p ); // 用完記得釋放

return 0;}

c語言裡面要定義一個字串陣列,陣列元素個數不確定,每個元素的長度也不確定,求動態定義的方法

11樓:匿名使用者

你可以用動態分配記憶體的方法,

比如你要建立一個字串陣列:

char *str;

str=(char *)malloc(n);

n是變數,可以在確定了變數的值後再用以上**分配記憶體,而str字串可以以一般陣列的用法使用,比如*str="hello";的話

str[1]='l';

最後別忘了釋放記憶體

free(str);

c 輸出陣列中最大的數和最小的數

先不說你取最大最小的演算法是否有問題 main函式裡,你f 和c 的呼叫就有問題啊 a k 和a o 是2個int型的數,你f 和c 都是需要3個引數,且有2個int型和一個int陣列型。再說你的k和o都沒賦初值。還有這句 if a i a i 1 這個if還可以寫為以下1句,我給注了,你可以看一下...

C語言陣列數升序排列和降序排列怎麼程式設計

刺友互 1 開啟visual c 6.0 檔案 新建 檔案 c source file。2 定義陣列和變數 includemain char a 100 b 100 c 200 p int i 0,j 0,k 0 3 輸入字串 printf please input string a n scanf...

在c語言中,將數插入陣列中的程式怎麼寫

有一個已排好序 從大到小 的陣列有5個元素,從鍵盤輸入一個數,要求按原排序的規律將它插入到陣列中 5 i if x2.j i 當這個數比當前數小時,用j記住當前位置,即j i,中斷迴圈。比當前數大時繼續下一個 小應當在左側,大則在右側 3.break for i 5 i j i a i 1 a i ...