10-23-2007
Quote:
Originally Posted by
phani_sree
how can i give the array size dynamically so that i can store the data from 1 to an infinte characters
Your expectations are unrealistic. No computer has an infinite amount of memory. The best you can do is allocate some finite space, process it, and then process the next portion of an infinite input.
Jim Mcnamara's code will allow you to declare arrays of variable size. I think you may be saying is that you don't know the amount of memory up front. If that is the case, you can allocate a reasonable amount of memory and try to reallocate (man realloc()) a larger chunk when you find you need more space.
9 More Discussions You Might Find Interesting
1. Programming
hi
i want to write a simple io-benchmark for raw devices, especially for
harddisks, vx-volumes and md-volumes on solaris.
is there a unix system call to get the size of the device? the 'stat' system call
reports the size for regaular files but not for block or devices. On Solaris the... (2 Replies)
Discussion started by: guenter
2 Replies
2. Programming
hello
i have a program in C (Unix - SOlaris5.7), and i have the next question:
i have a lot of char variable, and i want store their values in a char array. The problem is what i donīt know how to put the char variable's value into the array, and i don`t know how to define the array
please... (4 Replies)
Discussion started by: DebianJ
4 Replies
3. Programming
hi,
I have variable like,
char keyword = "TRANSPARENCY ";
while passing this variable to some function, first character of variable becomes null, but rest of characters still exist. Why this happens or something wrong with declaration. Their is no error while compiling & running... (2 Replies)
Discussion started by: avadhani
2 Replies
4. Programming
Hi All
I am simulating a problem in the production where i faced a situation.
Please find the following example program which i simulated.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
char str1; (3 Replies)
Discussion started by: dhanamurthy
3 Replies
5. Programming
Hi
I am passing or want to pass value of a char array, so that even thoug the called routine is changing the values the calling function should not see the values changed, meaning only copy should be passed
Here is the program
#include<iostream.h>
#include<string.h>
void f(char a);
int... (5 Replies)
Discussion started by: rkraj
5 Replies
6. Programming
I'm doing some coding in C++
Want to have a long empty string like below
const char ModMisfit :: DelStr = "\r \r";
However due to the long blank the line is very long. Is there any way to avoid this and keep the... (5 Replies)
Discussion started by: kristinu
5 Replies
7. Programming
i have an array like
#define NUM 8
....
new_socket_fd = accept(socket_fd, (struct sockaddr *) &cli_addr, &client_length);
char *items = {"one", "two", "three", "four", "five", "six", "seven", "eight"};
char *item_name_length = {"3", "3", "5", "4", "4", "3", "5", "5"};
... (1 Reply)
Discussion started by: omega666
1 Replies
8. Programming
cat int.c
int main() {
unsigned char wwn;
wwn=50;
wwn=00;
wwn=53;
wwn=30;
wwn=08;
wwn=09;
wwn=82;
wwn=17;
printf("WWN: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x\n ",
wwn,
wwn,
wwn,
wwn,
wwn,... (8 Replies)
Discussion started by: powyama
8 Replies
9. Programming
I want to return a char array to the main() function, but its returning garbage value.
#include<stdio.h>
//#include<conio.h>
#include<string.h>
char* strtrmm();
int main()
{
char str1,c1;
printf("\n Enter the string:");
gets(str1);
//strtrmm(str1);
printf("%s",strtrmm(str1));... (2 Replies)
Discussion started by: zinat
2 Replies
brk(2) System Calls Manual brk(2)
NAME
brk, sbrk - change data segment space allocation
SYNOPSIS
DESCRIPTION
and are used to change dynamically the amount of space allocated for the calling process's data segment; see exec(2). The change is made
by resetting the process's break value and allocating the appropriate amount of space. The break value is the address of the first loca-
tion beyond the end of the data segment. The amount of allocated space increases as the break value increases. The newly allocated space
is set to zero.
sets the break value to endds and changes the allocated space accordingly.
adds incr bytes to the break value and changes the allocated space accordingly. incr can be negative, in which case the amount of allo-
cated space is decreased.
ERRORS
and fail without making any change in the allocated space if one or more of the following are true:
[ENOMEM] Such a change would result in more space being allocated than is allowed by a system-imposed maximum (see ulimit(2)).
[ENOMEM] Such a change would cause a conflict between addresses in the data segment and any attached shared memory segment (see
shmop(2)).
[ENOMEM] Such a change would be impossible as there is insufficient swap space available.
[EINVAL] Such a change will result in crossing the boundary to uninitialized data in the calling process's data segment.
WARNINGS
The pointer returned by is not necessarily word-aligned. Loading or storing words through this pointer could cause word alignment prob-
lems.
Be very careful when using either or in conjunction with calls to the malloc(3C) library routines. There is only one program data segment
from which all three of these routines allocate and deallocate program data memory.
RETURN VALUE
Upon successful completion, returns a value of 0. Otherwise, a value of -1 is returned and is set to indicate the error.
Upon successful completion, returns the old break value. Otherwise, is returned and is set to indicate the error. The symbol is defined in
the header No successful return from will return the value
AUTHOR
and were developed by AT&T and HP.
SEE ALSO
exec(2), shmop(2), ulimit(2), end(3C), malloc(3C).
STANDARDS CONFORMANCE
brk(2)