05-05-2011
Quote:
Originally Posted by
rupeshkp728
I want to find the size of the total memory allocated on the heap for the following statement:
int* a = new int[1000];How can I use the sizeof operator for this?
I used:
printf("\t===> %d\n",sizeof(*a));
Is this statement correct?
I have asked the question because when I checked the memory of heap allocated in windbg it shows me the size as fc4 i.e. 4036 which is more then 4000 and not as desired. Any hint as to what may be the cause?
The statement is not correct, you'll get the size of an int on your architecture.
windbg... hmm... that's doesn't sound really Un*x...
Remember that new[] is an operator provided by your compiler, we don't know what it does... It may for instance add a header for internal bookkeeping; or perhaps the underlying allocation mechanism on your system imposed this... Who knows?
You'll have to look at the interna of the new[] operator to find it out.
Cheers, Loïc
10 More Discussions You Might Find Interesting
1. Filesystems, Disks and Memory
I'm a new guy to this field and I'm learning a lot about UNIX! Can any explan to me what exactly does 'heap size' mean and how can i increase the size for AIX 4.3.3? (2 Replies)
Discussion started by: i2admin
2 Replies
2. Filesystems, Disks and Memory
Hi all,
Thanks 'thehoghunter' and 'hugo' for the comments!
I've to increase the size of the heap size for AIX 4.3.3. Now what's the command that I've and also is it something similar to growing the file system in Solaris (growfs) (1 Reply)
Discussion started by: i2admin
1 Replies
3. UNIX for Advanced & Expert Users
I'm running websphere 4.5 on AIX 5 with java 1.3 and would like to find out the following: How much memory is allocated to each JVM, and how much of the allocated heap size is actually being used by a specific JVM? (0 Replies)
Discussion started by: rein
0 Replies
4. Solaris
hi all,
in my server there are some specific application files which are spread through out the server... these are spread in folders..sub-folders..chid folders...
please help me, how can i find the total size of these specific files in the server... (3 Replies)
Discussion started by: abhinov
3 Replies
5. Shell Programming and Scripting
Hello,
has anyone written something that will monitor/gather weblogic heap info ? I need to gather size, high/low stats to a file that I can upload to a speadsheet
thanks for your help! (2 Replies)
Discussion started by: galenw
2 Replies
6. Shell Programming and Scripting
Hi Friends,
i need a unix command to check the heap space availability on unix system as I am getting following error:
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error occurred during initialization of VM
Could not reserve enough space for... (2 Replies)
Discussion started by: Anji
2 Replies
7. HP-UX
Hi,
Am new to HP UX , is there a way to find out the size of memory allocated to a pointer on hp ux?
For example we can use the _msize() on windows to find the size of memory allocated to a pointer .
#include <stdio.h>
#include <malloc.h>
void main()
{
void *buffer; ... (0 Replies)
Discussion started by: Wkdunreal
0 Replies
8. UNIX for Dummies Questions & Answers
Hi
I have one Java application installed in my Solaris system. Is there a way to find out the heap memory allocated size/used size/free size for the particular Java process?
If anyone knows the command, please let me know. Even I appreciate if I have any scripts to find out the same.
... (0 Replies)
Discussion started by: nthiruvenkatam
0 Replies
9. UNIX for Dummies Questions & Answers
Hello,
I need to find the total allocated disk space for the home directory.
How can i find that in unix?(in GB).
Thanks. (4 Replies)
Discussion started by: kailash19
4 Replies
10. Solaris
Hi,
the /tmp size is less whereas the size allocated to swap is quite big. how to increase the size of /tmp -
#: swap -l
swapfile dev swaplo blocks free
/dev/md/dsk/d20 85,20 8 273096 273096
#: swap -s
total: 46875128k bytes allocated + 2347188k reserved =... (2 Replies)
Discussion started by: psb74
2 Replies
LEARN ABOUT NETBSD
__alignof__
__ALIGNOF__(3) BSD Library Functions Manual __ALIGNOF__(3)
NAME
__alignof__ -- GNU extension for alignment of an object
SYNOPSIS
int
__alignof__(void x);
DESCRIPTION
The __alignof__() operator returns the alignment of its operand. The operand can be a type or an expression. If the operand is a 'lvalue',
the return value represents the required alignment of the underlying type, not the actual alignment of the specified 'lvalue'.
The returned value is specific to the architecture and the ABI. If the architecture does not impose strict alignment requirements,
__alignof__() returns the minimum required alignment. If __aligned(3) is used to increase the alignment, __alignof__() returns the specified
alignment.
EXAMPLES
The syntax is comparable to the sizeof() operator. If the architecture aligns integers along 32-bit address boundaries, the following should
print the value 4.
(void)printf("%d
", __alignof__(int));
On the other hand, the following example should print the value 1, even though this is unlikely to be the actual alignment of the structure
member.
struct align {
int x;
char y;
} a;
(void)printf("%d
", __alignof__(a.y));
SEE ALSO
gcc(1), attribute(3), offsetof(3), typeof(3)
CAVEATS
This is a non-standard, compiler-specific extension.
BSD
December 20, 2010 BSD