C++ ::  passing 2D Array Created Using Vector Container

Feb 10, 2014

I am trying to pass a 2D array called f (coming from a text file with 9 columns of numbers and 297,680 rows) that was created using the vector container in my main() to the function myfunc. I'm just trying to figure out how to pass the address of f in main() to myfunc(), so that myfunc() has arguments consisting of a pointer g (that accepts the address of f as an input) and an int.

This is the error from the compiler:
test_2d.cc: In function ‘int main()’:
test_2d.cc:47:25: error: cannot convert ‘std::vector<std::vector<double> >*’ to ‘double (*)[297680][9]’ for argument ‘1’ to ‘int myfunc(double (*)[297680][9], int)’
return myfunc(&f,count);
^
Here is my code:

#include <iostream>
#include <fstream>
#include <iomanip> //allow setprecision to get all the decimal points
#include <vector>
#include <string>

[Code] ...

View 5 Replies


ADVERTISEMENT

C++ :: Accessing A Vector That Was Created In A Separate Header File?

Oct 26, 2014

i have this vector:

#ifndef new_thing_Inventory_h
#define new_thing_Inventory_h
#include <vector>
#include <string>
using namespace std;
class Inventory {

[code]....

so i know i need to use .push_back or .pop_back, but the program im using dosn't even recognize that inventory is a created vector.

View 6 Replies View Related

C++ :: Vector Like Container Which Can Reuse Space?

Dec 24, 2014

Unoptimized problem: I work on a table (vector of vectors). vector< vector<double> >

Optimization: If the current set of vectors is v1...vn (so each vk is a vector of double), my problem is such that I will only work on the last M of the vectors, the earlier vectors are irrelevant. I would like to reuse space to make the algorithm scalable, so I want to delete the vectors that can be forgotten. I read in a new vector, I delete the oldest vector.

View 2 Replies View Related

C++ :: Design Own Container With Properties Of Both Vector And List

Dec 14, 2014

How can I write my own container which has properties of both vector and list.

E.g. I can access elements directly using [] operator like vector and behave like list in terms of memory (means we don't have to shift elements if we want to insert in between like list)....

View 1 Replies View Related

C++ :: Vector Subscript Out Of Range Even With Item In Container

Oct 17, 2014

I will try my best to describe this problem I am having because I am not sure if I can reproduce the error in a small code example as this is part of a large code project.

I have a plain std::vector which contains pointers to objects.

When attempting to delete the objects, even if I know for a fact that the std::vector has at least one object in it as shown by the debugger, I get the "Vector Subscript Out of Range" error.

I'll even do a range for loop like so:

for (auto & e : CurrentObjects) {
delete e;
}

And yet I still get the "Vector Subscript Out of Range" error. The destructor is never called for the object represented by "e" so I am not sure why I get the error.

View 4 Replies View Related

C++ :: Size Of Dynamically Created Array

Dec 2, 2013

I have declared an array like:

/***********Creating an m*p array**********************/
B = new int *[m];

for(row=0;row<m;++row)
B[row] = new int[p];

How to find the number of elements in it?

The statement

cout << "number of elements in array B equals " << sizeof(B) << endl;

returns 4 each time the program runs

View 3 Replies View Related

C++ :: Creating Series Of Outputs Using Array Created By Variable?

May 18, 2014

I'm expected to get a starting minimum input, and also an ending maximum output (for example: 21, and 25). From here, i have to give output using all the numbers (in a row) between the min and max numbers.

(for the same example:
21
22
23
24
25)

I assumed I would want to create an array using a variable, but i'm not sure of that either.

View 4 Replies View Related

C++ :: Passing A Vector To A Function

Nov 3, 2013

i'm trying to send a vector to a function however i am getting these errors

error: invalid initialization of non-const reference of type 'std::vector<sf::Texture>&' from an rvalue of type 'std::vector<sf::Texture> (*)(sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::Texture, sf::T|

error: in passing argument 1 of 'int set_explosion_textures(std::vector<sf::Texture>&)'|

my relevant code is

//vector containing fighter explosion frames
std::vector<sf::Texture> f_explosion_textures(sf::Texture f_explosion_1, sf::Texture f_explosion_2, sf::Texture f_explosion_3,

[Code].....

View 7 Replies View Related

C++ :: Bidimensional Array Container

Jun 24, 2013

I need to create an array container with the same structure as double myA [100][100];. But I cannot declare it as array<double, 100, 100> myA; however I do need this container for its format. How can I make it work.

View 6 Replies View Related

C++ :: Array Container For Loop?

May 13, 2014

I want to find all instances of a substring mysub in array container myarr and replace each occurrence of mysub with empty string " ". To do that, I'd like to use for loop with search algorithm.

Code below:

p=array iterator
for ( p=search(myarr.cbegin(),myarr.end(), mysub.begin(),mysub.end();
p!=myarr.end();
p=search(p,myarr.end(),mysub.begin(),mysub.end() ); {

[Code] ......

View 2 Replies View Related

C++ :: Passing Sub-range Of A Vector By Reference

Dec 18, 2012

Suppose I have a stl vector of ints, and I want to pass a sub-range of that vector as an argument to a function. One way of doing that would be to copy the sub-range, and then pass that copy by reference, as follows:

Code:
#include <vector>
using namespace std;
int MyFunction(vector<int> &a_vector) {
// Do something
return 0;

[Code] ....

However, it can be time-consuming to copy the elements between the two vectors if my_vector is large. So I'm wondering if it is possible to directly pass a sub-range of my_vector by reference, without having to create a new vector and manually copy over all of the relevant elements?

View 4 Replies View Related

C/C++ :: Passing Vector As Reference Memory Leak?

Nov 30, 2014

I asked a few questions a few weeks ago about vectors and the fact that their data is stored on the heap. When a function closes, anything in its scope is destroyed, if it's passed by reference it won't be destroyed since it's outside the scope.

I have a program where I create a vector in one function, then pass it by reference to another. When I test for memory leaks, I get told I have 1 memory leak in in my start() function, and one memory leak in my save() function.

It's just a simple program that creates a vector, populates it with some numbers, then saves the numbers in a file. If I'm passing my vector by reference to another function, do I need to manually do something to avoid memory leaks? I'll post the code below.

#include <vector>
#include <iostream>
#include <iomanip>
#include <cmath>

[Code].....

View 2 Replies View Related

C++ :: Passing Vector To A Function - Getting Negative Length And Size

May 22, 2013

I am writing a raytracer, and currently I'm working on creating a bounding volume hierarchy to accelerate the process. To do this, I am first creating a vector that holds each of the objects in the scene, and passing this vector to the constructor for my BVH.

Code:
//in header
BVH_Node* bvh;
//in main raytrace function

[Code] .....

I am testing a scene that has only 2 objects, and so it goes to the size == 2 check. The first time it hits makeLeaf(), I segfault. I've used both gdb and valgrind, and of course it's a memory mapping error. gdb's backtrace tells me that the length of the vector I've passed in is -805305610 and the capacity is -21, and that it is inside my makeLeaf() function that the error occurs.

Here's the function:

Code:
BVH_Node* BVH_Node::makeLeaf(GeomObj* v){
BVH_Node* node;
node->obj = v;
node->isObj = true;
return node;
}

The segfault happens at
Code: node->obj = v;
If I run my raytracer without a BVH, the objList works perfectly.

View 8 Replies View Related

C++ :: Using Vector Push Back Function To Output Contents Of Vector (similar To Array)

Feb 9, 2015

How to output vector contents using the push_back function. My program reads in values just fine, but it does not output anything and I've been stuck on why.

here is my code:

#include <iostream>
#include <array>
#include <vector>
using namespace std;
int duplicate( vector < int > &vector1, const int value, const int counter)

[Code].....

View 3 Replies View Related

C :: Print Values Of Array From Function By Passing Array?

Nov 1, 2014

I wanted to print the values of a array from a function by passing the array as well as the number of elements to be read. For a single dimensional array, this is how i have written it. It's pretty straight forward. I want to read 5 elements from the 5th element in the array.

Code:
#include<stdio.h>
void display(int array[],int size) {
int i;

[Code]....

With this code I want to print the five elements from the element present in [0][4].

But shows an error that

Code:
D:BennetCodeblocks CLearning CSingleDimentionalArray.c||In function 'main':|
D:BennetCodeblocks CLearning CSingleDimentionalArray.c|18|warning: passing argument 1 of 'display' from incompatible pointer type [enabled by default]|
D:BennetCodeblocks CLearning CSingleDimentionalArray.c|2|note: expected 'int (*)[10]' but argument is of type 'int *'|
||=== Build finished: 0 error(s), 1 warning(s) (0 minute(s), 0 second(s)) ===|

I know when you pass a array as an argument it gets decomposed into a pointer, but with a multi-dimensional array this is not the case. how this works for mult- dimensional array's?

View 3 Replies View Related

C++ :: Passing 2D Array To A Function Where Size Of Array Is Not Known At Runtime

Jun 27, 2014

I'm wondering if it is possible to pass a 2d array to a function where the size of the array is not known at runtime.

I've tried

function ( array[][6] ) ;

But the size of the array has to be constant so it cannot be declared later.

I've tried using a template but you still have to declare the size of the array at runtime. Is this even possible at all?

The only other way I can think of is using a dynamic 2d array but how to create one and manipulate it.

View 2 Replies View Related

C++ :: Passing Vector Of Class To Function Of Another Class?

Dec 14, 2014

im passing a vector of a class to a function of another class. But i cant access the data on the classes inside the vector.

Something like that:

class CDummy{
...
public:
string m_name;

[Code].....

Im creating the vector on main() and using push_back with a pointer to an initialized CDummy instance

View 5 Replies View Related

C++ :: Passing Value Into Array

Apr 16, 2014

I am writing a program for a poker game.. I created a class to get cards and create deck.. the problem I am having now is how to deal 5 cards to an array to be evaluated later. I want to call the array player1[5]. So I tried to create a pointer called GetCard, and was hoping to then pass the value into the player1[] array. I tried to use pointer but I get the following error

4931[Error] void value not ignored as it ought to be

Code: #include <stdlib.h>
#include <iostream>
#include <ctime>
#include <algorithm>
using namespace std;

[Code] .....

View 9 Replies View Related

C :: Passing Array To Function?

Jul 31, 2014

I want to pass array to function, to fill array with new values and then to print the array in the main. But I have problem because it prints me just array of zeros. Maybe the concept is wrong, I'm new with passing arrays to function.

function:

Code:
void printSum(int *return_array) {
int return_array[3];
int i;
for(i = 0; i < 3 ; i++){
return_array[i] = 5;

Code:

void printSum(int *return_array);
int main {
int m_return_array[3];
int i,j;
for(i= 0 ; i < 3 ; i++){
m_return_array[i] = 0;
} printfSum(start,m_return_array);

[Code]...

View 1 Replies View Related

C :: Passing 2D Array To A Function

Sep 17, 2013

I need to pass a 2D array to a function. I want to know, where I may have made a mistake. This is the piece of code that I found on the web, and I am using it to allocate my 2D array.

Code:
signed char allocate2D( int** arr2D, int rows, int cols )
{
int i;
arr2D = malloc( rows*sizeof( int* ) );
if( !arr2D )
return -1;

[Code]....

My main function passes the 2D array to the function

Code: signed char read_root_message_file( int **Root_Messages, int *num ) This is how I pass the array in the main function to the above function:

Code:
int main( int argc, char *argv[] )
{
int **Root_Messages;
...
...
Root_Messages = NULL;
read_root_message_file( Root_Messages, &num_root_msg );

[Code]....

View 7 Replies View Related

C :: Passing Data From An Array And Using It In Another

Mar 18, 2014

I have been asked to write a lottery program in c using 5 separate functions 1 to take 6 numbers from user 2 to display the numbers 3 to sort the numbers 4 compare the chosen numbers to the winning numbers and 5 to list the frequency the user pick a number depending on how many times they play the game the problem im having is with the first 2 functions i can take the input and pass it to a display function but cannot get it to display the numbers here is what i have. The output from this is at the bottom .....

Code:
//function prototypes
int myNumbers();
void displayNums();
void sort();
void compare();

#include <stdio.h>
#define NUMS 6
#define WIN 7

[Code] .....

"Please enter your lucky numbers
1
2
3
4
5
6
Your numbers are 2286612"

View 1 Replies View Related

C :: Passing Array To A Function?

Apr 6, 2013

Would this be an example of passing an array to a function??

Code:

void wipe (int theArray[] ) {
int index;

printf("
Inside function wipe() sets each array element back to 0.
");

[code]....

View 4 Replies View Related

C :: Passing Array To Function

Jan 19, 2014

I am following a tutorial and the topic was passing array to function so i tried to do a BMI calculator by myself. I am using code blocks to compile the codes, it is actually working while using compiler's run button. But when I open the exe file, its closing the window after entering the persons' weights and heights. Here is the code

Code:

// Passing array to function example BMI calculator of n person
#include<stdio.h>
#include<math.h>
void assess(float bmi[],int a);
int main(void){
int n,i,j;
}

[code]....

View 4 Replies View Related

C :: Passing Struct Through Array

Apr 2, 2013

I am trying to pass a struct through an array to another array from one microprocessor to another microprocessor and then dereference that array to update the same exact struct on the other microprocessor.My goal is to always have values inside of both structs while sending any updates to the struct on the other microprocessor in the mean time but I seem to be looping through the data and the members of the struct seem to be cleared out after every clock cycle. I can verify this by the flashing of my leds which the struct controls.

FIRST MICROPROCESSOR

Code:

extern struct i2c_data * TX_Data;
extern struct i2c_data TX_Data_1;
extern struct i2c_data TX_Data_2;
}

[code]....

View 1 Replies View Related

C++ :: Passing Array To Function

Jan 8, 2014

I am learning arrays i want to whats the following effect of cods while passing array to the following function

void fun(array[])
void fun(array[4])
void fun(array[],4)
void fun(array[5],4)

View 3 Replies View Related

C++ :: Passing A Multidimensional Array

Sep 25, 2013

I'm trying to pass a two-dimensional array to a function. The function is defined as: long foobar(char foo[][CONST]); I have to create that array dynamically. Currently I do that this way: char* bar = new char[count * CONST];

But when I'm trying to pass the array I get a type conversion error. I tried a lot of different ways to pass the pointer and/or to allocate the memory, but apparently I didn't find the right way or combination of definition, allocation, casting and calling.I cannot change the definition of the function, which (IMHO) is pretty stupid. :(

View 3 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved