可動態決定大小的 C 語言陣列
2013 新年快樂!大家有去跨年嗎?希望大家今年事事順利,程式功力進步多多!
學過 C 語言的朋友大概都知道,一旦宣告陣列大小是多少,那個陣列的大小就一輩子不會變了。
不過偏偏有人不甘心,所以就自己寫了一個可以動態縮放大小的 C 語言陣列,另外取名叫「Vector」。如果您想知道他怎麼做的,原文附上原始碼與解說:
http://happybearsoftware.com/implementing-a-dynamic-array.html
「vector c++宣告」的推薦目錄:
- 關於vector c++宣告 在 紀老師程式教學網 Facebook 的最讚貼文
- 關於vector c++宣告 在 [問題] vector轉array.. - 看板C_and_CPP - 批踢踢實業坊 的評價
- 關於vector c++宣告 在 C++ std::vector 用法與範例 的評價
- 關於vector c++宣告 在 向量大小和容量| 他山教程,只選擇最優質的自學材料 的評價
- 關於vector c++宣告 在 [問題] vector與array效能問題- 看板C_and_CPP | PTT數位生活區 的評價
- 關於vector c++宣告 在 【C 語言入門】30.1 - 在函式間傳遞二維陣列 - YouTube 的評價
- 關於vector c++宣告 在 【C 語言入門】25.2 - 陣列的指標 - YouTube 的評價
vector c++宣告 在 C++ std::vector 用法與範例 的推薦與評價
本篇介紹C++ 的std::vector 用法,C++ std::vector 教學如下: ... 這樣是宣告一個int 整數類型的vector,裡面沒有任何元素(空),size 為0 表示vector ... ... <看更多>
vector c++宣告 在 向量大小和容量| 他山教程,只選擇最優質的自學材料 的推薦與評價
Vector 對其大小有一個特定於實現的上限,但在到達它之前可能會耗盡RAM: ... Vector 會自動部分管理容量,當你新增元素時,它可能會決定增長。 ... <看更多>
vector c++宣告 在 [問題] vector轉array.. - 看板C_and_CPP - 批踢踢實業坊 的推薦與評價
不好意思,各位前輩
有個問題想請教
我先宣個一個vector 然後輸入數字到裡面
接下來再宣個一個動態陣列並且把值複製進來
最後列印
我編譯都過了...但是程式執行時卻會出現一堆亂碼
邏輯上我也不知道自己有哪邊想法有錯
可否能請前輩指點一下
因為想練習寫的比較嚴謹
所以int 我都宣告成signed int
先謝謝了~
#include<iostream>
#include<vector>
using std::cin;
using std::cout;
using std::endl;
using std::vector;
bool main( int argc , char *argv[] )
{
vector<int> v;
size_t i=0; //計數
signed int g; //儲存輸入
while(cin >> g)
{
v.push_back(g);
}
//用兩個指標相減得vector長度
vector<int>::iterator p = v.begin();
vector<int>::iterator q = v.end();
vector<int>::difference_type x = q - p;
//型別轉換 difference_type轉size_t
for(vector<int>::difference_type a = 0 ; a != x ; ++a )
{
i=i+1;
}
signed int *k = new signed int[i]; //宣告動態陣列
for( p , k ; p != q ; ++p , ++k ) //複製
{
*k = *p;
}
for( signed int j=0 ; j != i ; ++j ) //列印
{
cout << *(k+j);
}
delete [] k;
return true;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.20.128.34
... <看更多>