C++ :: Change From Array To Pointer Arithmetic?

Sep 12, 2013

#include <iostream>
#include <string>
using namespace std;

[Code]....

View 3 Replies


ADVERTISEMENT

C/C++ :: Pointer To A Function Used In Arithmetic Error

Nov 23, 2014

I'm working on a short program to calculate the mode of a vector of ints. I am new, so not extremely familiar with pointers, and passing items to functions. This is something I've struggled with (obviously, or I wouldn't be here). I am currently getting the following error when I try to compile this program using g++:

warning: pointer to a function used in arithmetic

I receive this error for the following lines: 66, 73, 75, 81.

I am not using pointers here so I do not understand why this error crops up, much less how to fix it. Here is the code I am struggling with:

#include <iostream>
#include <iomanip>
#include <vector>
#include <algorithm>
#include <limits>
using namespace std;
vector<int> getModes(vector<int> userValues);

[Code] ....

The errors are on lines 54, 61, 63, and 69

View 3 Replies View Related

C++ :: Arithmetic Operators Overloading For Class With Pointer

Nov 11, 2014

I am stucked in a problem of overloading arithmetic operators such as "+,*" for a class in the form

class Point {
int N; // dimension of the point
double *Pos; // length of N
}

My assign operator is :
Point& Point::operator= (const Point& pt) {
N= pt.N;
if(Pos == NULL) Pos = new double[N];
memcpy(Pos, pt.Pos, N*sizeof(double));

[Code] ....

The add operator "+" is:
Point operator+( const Point& pt1, const Point& pt2 ) {
Point ptr = Point(pt); // this is a constructor
for (int i=0; i<pt1.N; i++) ptr.Pos[i] += pt2.Pos[i];
return ptr;
}

Based on the above overloading, What I am going to do is :

P = alpha*P1 + beta*P2; // alpha and beta are double constants, P1 and P2 are Points objes

It is ok with Intel C++ 14.0 compiler, but does not work with the microsoft visual c++ 2012 compiler in debug mode in visual studio 2012.

I stepped in those operators and found that visual c++ compiler deconstructs the ptr in operators "*" and "+" before its return while intel c++ finished the operation P = alpha*P1 + beta*P2; and delete those ptrs at last.

Portability of my operator overloading is worse. How to get those arithmetic operators overloading for class with pointers in it.

View 3 Replies View Related

C++ :: Append Suffix To String With Pointer Arithmetic

Mar 1, 2013

Dynamic memory allocation and pointer arithmetic with char arrays.

The class was given to me in a very basic skeleton form with prototypes but no implementations, along with a test function to test my implementations. I CAN NOT use any C String functions in this assignment.

The part of the program which is troubling is the append function, which just appends a parameter string215 object to the end of the current string215 object.

// Add a suffix to the end of this string. Allocates and frees memory.
void string215::append(const string215 &suffix) {
char *output = new char[str_len(data)+suffix.length()+1];
for(int x = 0; x < str_len(data); x++) {
*output = *data;

[Code]...

This portion of the code is tested in the 13th test of the test function as shown here:

string215 str("testing");
...

// Test 13: test that append works in a simple case.
curr_test++;
string215 suffix("123");
str.append(suffix);
if (strcmp(str.c_str(), "testing123") != 0) {
cerr << "Test " << curr_test << " failed." << endl;
failed++;
}

Here is the description of the append class: Add the suffix to the end of this string. Allocates a new, larger, array; copies the old contents, followed by the suffix, to the new array; then frees the old array and updates the pointer to the new one.

My program aborts at the very end of the append function execution with the error message:

Debug Assertion Failed!

Program: [Source path]dbgdel.cpp
Line: 52

Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse)
...

Abort || Retry || Ignore

Here's a pastebin of the .cpp and .h file for this program

string215.cpp: [URL] ....
string215.h: [URL] .....

View 14 Replies View Related

C/C++ :: Multiplication And Division Operation Not Allowed With Pointer Arithmetic?

Jul 28, 2013

C++ only allow addition and subtraction operation with pointer .why multiplication and division is not allowed? Then how to perform multiplication and division with pointer

View 3 Replies View Related

C++ :: Possible To Change A Single Variable From A Pointer?

Dec 2, 2013

I am stuck at a problem where I have two pointers pointing to the same object, and I need to change an int on one of the pointers but point to the same object.

To be more specific, there is an array of Item objects. A long list of items a player can buy. Then, there is the player's inventory, a vector pointer. Whenever a player buys an item, it sets the pointer to the bought object.

The problem arises when he buys two of the same object. I tried to identify the objects with an ID, but it does nothing, because they are just pointing to the same object, and so I have no way of telling them apart.

This is further complicated by the fact that it is a polymorphic object. So, I can't simply make a new every time I buy an object, without making a hassle. Well, at least I am not familiar with that kind of code just yet.

View 18 Replies View Related

C :: Change Arrays In Function Int Palin To Pointer

Oct 15, 2014

I'm trying to write a program to test if a string is palindromic using only pointers

Code:

#include <stdio.h>
#include <string.h>
void revstr(char* str)
}

[code]....

I need to change the arrays in the function int palin to pointers.

View 4 Replies View Related

C :: Sorted List - Why Value Of Void Pointer Change

Feb 16, 2014

I have a the following in a header file.

Code:

struct SortedList{
void * data;
struct SortedList * next;
struct SortedList * previous;
int (*compareFunc)(void *, void *);
void (*destructor)(void *);

[Code] ....

In a .c file, I implemented the SLCreate function.

Code:
SortedListPtr SLCreate(CompareFuncT cf, DestructFuncT df){
struct SortedList item;
item.data = NULL;
item.next = (struct SortedList *) malloc(sizeof(struct SortedList));

[Code] ....

In main.c, I try to do the following:

Code:
SortedListPtr list = SLCreate(&compareInts, &destroy);

A bunch other code that does not alter list or it's contents at all.

struct SortedList item = (*list);
void * data = item.data;
if (data != NULL) {
printf(Why did data become not null???
"); }

How come my variable data became not null anymore when I haven't altered it at all....

View 2 Replies View Related

C++ :: Pointer Passed To Function Value Doesn't Change

Dec 24, 2014

when i pass a string pointer to a function such as string *str = new string(""); and pass that string to a handleElement() function e.g. handleElement(str), and i change the value in the function it simply doesn't change when the function exits as though it's passing it by value or something, even though it gives the pointer address.. I've now changed the code to use double pointers and pass the reference of the str pointer and it works but it seems ugly to use double pointers for this.

//handles when a new element is encountered when parsing and adds it to the parse tree
bool ParseBlock::handleElement(char cur, string *curString, int count, bool isOperator) {
countNode = new ParseNode(count);
//keep track of numbers and strings if they exist and insert them
if(!curString->empty()){
if(isNumber(*curString)

[code].....

View 2 Replies View Related

C :: Access Element Of Array Through A Pointer To A Pointer

Dec 25, 2013

i have been fiddling with pointers but I don't understand how the proper syntax is written when I want to acces an element of an array through a pointer to a pointer...The code is all mostly just random bs for learning purposes. I marked the problem "// THIS LINE"

Code:

#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
#define MAX_DATA 100
int find_average(char *iden, ...) {

[Code]...

View 2 Replies View Related

C :: How To Declare Two Dimensional Array Using A Pointer To A Pointer

Jul 16, 2013

This is a sample program that declares a Matrix as a structure with an array as a pointer to a pointer. The following program is supposed to store a matrix in the structure "_Matrix" and later print the matrix just entered but it fails giving me a "segmentation fault". The sample code is given below

Code:
#include <stdio.h>
#include <stdlib.h>
struct _Matrix {
int row_size;
int col_size;
int **mat;

[Code] ......

View 1 Replies View Related

C :: How To Use 2D Array In Function And Change Array Values

Apr 17, 2014

use 2D array in function and change the array values. I do not know if I can use array by calling from a function. I have 6 row 6 column array, I used it inside a function and for the another function I just need to change 4. row 4. column and I do not want to type array to just change one part. I do not know if there is another way or not

View 7 Replies View Related

C :: Pass Array To A Function And Change The Array

Oct 1, 2013

I want to pass an array to a function and change the array, how can I do that?

Code:
#include<stdio.h>
/*function to change the array*/
void rearng(int *qw) {
int i,j,a;
int sa[8]; //temp array
int c = 0;
int high;

[Code] ....

View 6 Replies View Related

C++ :: Coin / Money Change Code Doesn't Give Exact Change

Feb 20, 2013

My coin/money change code works when there can be an exact change each time, i.e. when the 1 cent option is available. However, when the change options are only $10, $5, $1, 25 cents and 10 cents, it does not give me what I want for instance, I wanted to get change for $237.80, I was expecting to get:

23 10's, one 5, two 1's and 8 dimes. However, the code below is giving me 23 10's, one 5, two 1's and 3 quarters (there is no option left for the 5 remaining cents).how to fix it?

Code:
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
void change(double cents, int a[]);
int main() {
double Dollars;
double cents;

[code]...

View 14 Replies View Related

C++ :: How To Change Array To Dynamic

Sep 13, 2013

So this is the code I have so far, I didn't know it had to be a dynamic array so how would I Utilize dynamic array allocation to size the modal array

#include <iostream>
using namespace std;
int main() {
const int arraySize = 25;
const int patternSize = 10;

[Code] ....

View 1 Replies View Related

C++ :: Change Length Of Array Using GDB

Jun 16, 2014

I have a program with the following code, and I need to be able to either change the value of any or all of the strlen or to replace one or all with a temp array value. All values of the expression are arrays.

if (::strlen(tc_buf) + ::strlen(maxtime_buf) + ::strlen(" ") < sizeof(localBuf))

View 1 Replies View Related

C++ :: How To Change Values Of Array

Feb 1, 2015

how can i change the array value and display the updated value. for example this is the output beginning of the program

-----------------------------------------------------
Part Description Number of parts in the bin
----------------------------------------------------

valve 10
Bearing 5
Bushing 21
Coupling 7

[Code].....

View 1 Replies View Related

C++ :: Looping Through 2D Array Using Pointer To Pointer

Jan 3, 2013

I have the following code :

Code:
#ifndef TDYNAMICARRAY_H
#define TDYNAMICARRAY_H
namespace Massive {
template<class T>
T **AllocateDynamic2DArray(int nRows,int nCols)

[Code] .....

I wish to know how to traverse or loop through a dynamic 2D array using pointer to pointer as returned by the code above. Like I would in a static T[20][20] 2D array.

View 8 Replies View Related

C++ :: How To Change 2 Dynamic Array Int Vector Class

Oct 29, 2014

// dynamic memory for 2D char array
char **board = (char**) calloc(column, sizeof(char*));
for(int i=0; i<column; i++)
board[i] = (char*) calloc(row, sizeof(char));
//for char 255 row and colum
char temp[255];
inputFile.getline(temp,255);

[Code]...

so i want to change into vector class like Vector<board>row;

View 8 Replies View Related

C :: Why Integer With Array Change After Passing Through The Function

Apr 12, 2014

Code:

#include <stdio.h>
void define (int integer, int IntArr[0], int *IntP);
int main(void)
{int integer = 0, IntArr[1] = {0}, IntP = 0;
define(integer, IntArr, &IntP);

[Code]...

Why does the integer with array change after passing trough the function and the normal integer doesn't? (I know why the normal one doesn't, but I dont get the array one)

View 1 Replies View Related

C :: Change Elements Of Char String Array

Dec 16, 2013

why does this give me an error when i try to change the elements of the char string array.

code:

int main(void)
{
char *name = "aaa";
// setup the name
name[0] = 'Z';
name[1] = 'e';
name[2] = 'd';
name[3] = '';

return 0;
}

[code]....

View 3 Replies View Related

C/C++ :: Arithmetic Using A For Loop?

Feb 15, 2013

One thing that I was not able to fully understand even though I read through the section on it a few times, is the for loop. I mean, I understand the premise of (statement, condition, update statement). However, I do not quite understand how a math problem is affected by this.

How this works using multiplication and division? And lastly, why would you use a do.. while loop?

View 1 Replies View Related

C++ :: Function To Change Char Array String To Lower Case

Feb 17, 2014

This code ran well until i added in the ToLower function which is supposed to convert the char array string to lower case (based off ascii strategy -32). correct this function so it converts string to lower case and doesn't get errors.

#include <iostream>
#include <string>
using namespace std;
const int MAX = 81; //max char is sting is 80
void ToLower(char s[]);
int main(){
string y_n;

[Code]...

View 1 Replies View Related

C :: Convert String To Arithmetic?

Mar 16, 2014

I've got this string: Code: char * string = "2+2"; I want to get an integer value = 4 from this. How would I go about doing this.

View 1 Replies View Related

C++ :: How To Create BST For Arithmetic Expression

Jan 15, 2015

I am a c++ leaner, I am trying to create a BST tree for this expression: 2346*+/8+, and do inorder and postorder to get the in-fix version, and postfix version of the expression. I am having difficulty to create the binary tree for the expression. Here is my peso code:

Tree:
Stack:
inorder fn{}
postorder fn{}
main{
input the file;
while(expression){

[Code] ....

The tree I want to create is like this
+
/
(/) 8
/
+ 2
/
* 3
/
4 6

My problem for this code is that after create (4*6) tree, I cant link (+3) with (4*6).

View 1 Replies View Related

C/C++ :: Printing Out Arithmetic Sequence

Oct 6, 2014

I made a program that prints out arithmetic sequence.. but problem is that,

when I enter a(first term) =5, d(differnce)=2.4 and n=3 the program prints out only first two terms not three.. for all the other numbers it works correctly..

View 1 Replies View Related







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