C :: Use Realloc To Extend The Memory?
Feb 24, 2013
I need to use realloc to extend the memory when it goes out of bounds but I am not getting a correct output.
this is how i am trying to realloc
Code:
if(strlen(theString) - strlen(searchFor) + strlen(replace) >= size -1) {
size += 80;
// theString = strcpy(theString,theString);
[Code].....
View 4 Replies
ADVERTISEMENT
Aug 10, 2014
If I do this:
void* testPtr = malloc ( 1000 )
And then this:
testPtr = realloc ( testPtr, 500 )
Will the realloc just reduce the allocated size and keep the same pointer, or can there be a chance of it finding another place for that allocation ( Meaning that it will expensively move the memory to another location )?
I am trying to create efficient programs by making my dynamic allocations the least resource hungry as possible during runtime.
View 2 Replies
View Related
Jan 27, 2013
i want to improve my knowledge about the dyn allocation of char pointers... with this code i wanted to type a string and insert the string in a array created dynamically:
Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char c;
char *test=NULL;
unsigned int len;
}
[code]....
why there are these 3 initial character '' ')' ':' that i didn't have typed...
View 4 Replies
View Related
Dec 18, 2014
I would like to realloc a 2D array. I have a counter, itime, it increases each step. Each step, I would like to reallocate my array, keeping the old values, and add new values to the array. When itime=1, I use only malloc, because it is allocated for the first time. When itime increases (e.q. itime=2), realloc comes into process. In the realloc process the GUI crashes.
int itime;
char ** solpointer;
itime = 1;
do {
if( itime == 1 ) {
solpointer = (char**)malloc(sizeof(char*) * itime);
solpointer[itime-1] = (char*)malloc(sizeof(char) * 32);
[code]....
View 3 Replies
View Related
Mar 21, 2013
how to correctly use realloc on an array of char arrays? Say I want to store strings in arrays (=array of char arrays) and double the size of max. strings (y value):
Code:
int x=200;
int y=10;
char *carray[y];
for (int j = 0; j < y; ++j)
carray [j] = malloc (sizeof(char)*x);}
}
[code]...
fix the realloc part of my code?
View 2 Replies
View Related
Jan 19, 2012
The following code fails/crashes in the second loop where it prints the content and frees the memory. But the issue could be with the first loop.
int main(int argc, char *argv[]){
char **a, buf[80];
int x;
a = (char **)realloc(NULL, sizeof(char *));
for(x = 0; x < 5; x++) {
[Code] .....
View 3 Replies
View Related
Mar 19, 2013
I had a quick question regarding a program I am trying to complete. I have the basics worked out, and everything seems to be done, but I am running into two issues.
1= The program keeps telling me "Run-Time Check Failure #3 - The variable 'order' is being used without being initialized."
and
2= When I reach my output screen I receive "Unhandled exception at 0x7751c41f in CISC 192 Project 3.exe: Microsoft C++ exception: std:Out_of_range at memory location 0x002eefb8.."
While the first one isn't necessarily a deal breaker the second one definitely is.
Code:
// Bookstore Project 3.cpp : Defines the entry point for the console application.
// Declarations
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <string>
#include <istream>
[Code] ....
View 2 Replies
View Related
May 11, 2013
I'm trying out the gmp library by building a simple pi calculation program (original, I know!). On a million digits of Pi I've debugged the program and seem to have about a megabyte too much of memory at the end of the program (I start with around 250k before any allocation begins and end at around 1200).
int main(int argc, char *argv[]) {
//set a//
int digitsofpi =1000000;
mpf_set_default_prec(log2(10) *digitsofpi );
mpf_t a;
mpf_init (a);
mpf_set_ui (a,1);
[code].....
View 2 Replies
View Related
Mar 8, 2013
I am looking for a way to run a process form memory, without having any executable. The application will be kept inside a resource and will be extracted during run time. It should be then started as a new process. I couldn't find a solution that works also on x64
View 5 Replies
View Related
Nov 6, 2014
We have a proprietary third-party library that we make calls into via an API. Through a series of API calls, this library manipulates specific sets of data. Prior to making these calls, there are some API calls that are necessary in order to initialize the library in preparation for a specific set of data. One of the calls tells the library to allocate some memory and then perform whatever initialization is required. This particular API call returns a pointer to char (char*) that is later used as an argument for a few other API calls. My question is... Is there a way, or maybe some kind of trick, to tell exactly how much memory was allocated? It doesn't matter whether or not the solution (if there is one) is C++ related, or some series of OS commands. FYI: We're running on Redhat Linux 6.2 and using GNU C++ 4.4.6.
View 5 Replies
View Related
Jan 31, 2015
So, it seems I have a bug in my code:
Code:
char *mem = malloc(9), *bottom = malloc(3), *in = "abc";
int position = 2, i;
mem = "onetwo";
printf("OLD mem = %s
", mem);
[Code]....
What I'm trying to do is insert "abc" in the 3rd position of "onetwo". Results would be "oneabctwo", but all I get is crashing.
View 9 Replies
View Related
Mar 27, 2014
Is there any way to read RAM memory directly. For say i want to access memory location 0x0100 to 0x120. How to do that. how to declare the variable, is it unsigned int. what is the type of read values it hex or ascii. how t cast it.
View 2 Replies
View Related
Jul 14, 2013
I have declared a global variable as pointer. The program performs certain number of iterations. After every iteration, the size of memory required for the pointer changes and this pointer variable is to be accessed by different functions. Now, here is my doubt:If I allocate the memory for this global variable in a function, will the contents of the memory be lost once I exit that function. In my opinion, it should not be the case as the dynamic memory allocation takes place in "heap" and should not be affected by the call of functions.
View 4 Replies
View Related
Oct 17, 2014
Code:
int *p, ar[100];
p = (int *)malloc(sizeof ar);
.. *p is a pointer variable, but what means another * here --> (int *)?
View 3 Replies
View Related
Sep 18, 2013
I have created a database for music cds:
Code:
#include<stdio.h>
#include<stdlib.h>
#define array
typedef struct cd_database
[Code]....
When I am using malloc instead of arrays the code is not working properly after exit. I have tried alot but can't came up with a way
View 5 Replies
View Related
Jun 1, 2014
Code:
# include <stdio.h>
# include <math.h>
# include <stdlib.h>
# include <malloc.h>
}
[code]...
I am compiling it on a 64 BIT ubuntu machine having 64GB ram using gcc 4.6 compiler. I am getting the following output Error allocating memory. But (914*866*2724) is approximately 8 GB, Whats wrong with the code?
View 7 Replies
View Related
Feb 15, 2013
I am new to C++ language and I am still learning.I'm doing basic stuff to better understand dynamic memory. I was wondering why I keep getting memory issues.*/
#define SIZE 15
class word {
char* str;
public:
[code]....
View 1 Replies
View Related
Oct 25, 2013
I'm currently learning templates -- & my logic is in a knot with what I am trying to do which is the following:
-Create a function name load
-Accepts a filename (the filename is a text file of integers)
-Open the file
-Create an array(dynamically allocating an array) filling it with the elements read in from the file & returns the array(so that the return type of the array is a pointer to the element type of the array).
//Header file:
#ifndef BUBBLE_SORT_H
#define BUBBLE_SORT_H
#include <iostream>
template <typename T>
void load(std::string filename, T *&arr, int *size);
[code].....
how to allocate memory when it comes to using templates..
View 2 Replies
View Related
Jul 12, 2013
In the code below. I believe I am returning the memory location of the value I am looking for. How can get the value?
main.cpp
int choice = 0;
PlayerMenu *newPM = new PlayerMenu;
File *file = new File;
// Menu for loading, creating or exiting the game
choice = newPM->menuChoices();
PlayerMenu.cpp
[Code] ....
I am not sure how to deference the value so I can get at the value instead of the memory location.
View 5 Replies
View Related
Mar 27, 2013
Is it possible to store data to CPU memory, if so how much memory can I store and how? Say I wanted to store an array, about 6MB in size?
View 1 Replies
View Related
Sep 2, 2014
declare
int *p[3];
that gives an array with 3 pointers, but how 3 pointers can have a link in the memory?
View 10 Replies
View Related
Dec 15, 2013
Let us consider the following two classes:
class case1
{
public:
int n;
float x;
[code]....
Now, let's suppose that I instantiate an array of 100 elements of each class:
case1 c1[100];
case2<20> c2[100];
My question is this: will c2 occupy roughly half of the memory than c1?will the value c1.n be allocated 100 times, while the value c1.n wil be allocated only once?
View 3 Replies
View Related
Sep 12, 2013
Say we have this crude memory pool that is on the heap:
char* mpool = (char*)malloc(sizeof(char) * 4096);
And we used placement new to construct a couple objects in place:
char* next = mpool;
void* fooptr = new (next) FOO();
next += sizeof(FOO);
void* bazptr = new (next) Baz();
next += sizeof(Baz);
And at the end, let's say the memory is freed without having called the object destructors:
free(mpool);
What exactly happens? I haven't found any page that states what happens in this situation. Does it cause undefined behavior?
View 4 Replies
View Related
Aug 3, 2013
I am having a problem with a small exercise program. The program works the first time through the loop but not the second. It faults on this line:
cin >> *(pint + i1);, with this error: pint <Unable to read memory>.
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int MAX(5);
int count(4);
int value(MAX);
[Code] ....
View 5 Replies
View Related
Dec 19, 2013
Suppose if i code like this,
while( true ) {
int x;
// do some thing;
// break on some condition match;
}
whether memory is allocated for ints x one time or each time it hits int x.
View 6 Replies
View Related
Nov 26, 2014
I have a situation where map elements will be inserted all throughout a continuous loop. I know that there's no reserve function for maps like there are for vectors, but I know exactly the maximum amount of elements there will be in the map, I just don't know the value of each individual map.
Would it be possible if I just inserted the maximum amount of elements in the beginning of the program, and change the value of each/any individual element later on? For example:
std::map<int, std::string> map;
//There will be a maximum of 200 elements in this map
for (int i = 0; i < 200; i++) {
map[i];
}
//Change the value of individual elements as I wish
Is it more efficient than initializing on declaration if initializing will be done often?
View 2 Replies
View Related