04-13-2009
You can't free an statically allocated variable (like your int test above), not in C nor Java nor C# or any other language. It's always valid until execution leaves the variables scope (usually the containing block or when an object is destroyed).
With malloc(3) you can allocate memory for an array or structure, which you can access via a pointer afterward. When you're done, use free(3) to return that memory to OS control. It's basically "ask the OS for control of a memory segment and return that control afterwards", no need to dispose of anything.
In C++ you'll use new and delete instead of malloc and free.
8 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
For some reason, I'm having a bit of a brain fart here and cannot think of a simple solution to this problem...
We have a samba server installed on one of our Darwin boxes. Someone is doing massive amounts of work through a samba share, and in turn in pegging samba and the box. I can see how... (1 Reply)
Discussion started by: fender177
1 Replies
2. UNIX for Dummies Questions & Answers
I currently access a remote Unix server which has an external modem connected to one of it's serial ports (/dev/cua/b). At times, this server undergoes a hard reset and for some reason this disallows us from making use of the modem any longer. A hard reset of the modem always seems to fix the... (0 Replies)
Discussion started by: ebender1
0 Replies
3. Solaris
Hi,
I got a solarsi 10 box with 9 zones and the cpu shares as following
ID NAME SHARES
0 global 1
1 FMW1 100
2 FMW2 100
3 OID1 100
4 OID2 100
5 OVD1 100
6 OID0 100
7 FMW5 100
8... (2 Replies)
Discussion started by: fugitive
2 Replies
4. UNIX for Dummies Questions & Answers
Hello,
I am trying to free memory allocation after EOF from keyboard is detected (ctrl+D) in a C program. I've written a small program to replicate my problem:
int main(int argc, char *argv) {
char *line;
line = (char*)malloc(sizeof(char)*(512));
line = fgets(line, 512,... (1 Reply)
Discussion started by: oddworld
1 Replies
5. Programming
Hello,
I am trying to free memory allocation after EOF from keyboard is detected (ctrl+D) in a C program. I've written a small program to replicate my problem:
int main(int argc, char *argv) {
char *line;
line = (char*)malloc(sizeof(char)*(512));
line = fgets(line, 512,... (10 Replies)
Discussion started by: oddworld
10 Replies
6. Boot Loaders
Here is a list of resources for Unix and GNU/Linux bootloaders:
GRUB Legacy: The original GRand Unified Bootloader. Now known as GRUB Legacy.
GRUB: The latest and greatest. More commonly known as GRUB2.
BRUG: Brand-new Universal loadeR from GRUB. Based on GRUB. Adds features like new object... (0 Replies)
Discussion started by: fpmurphy
0 Replies
7. Shell Programming and Scripting
Hi guys,
I wrote a basic inotifywait shell script on my CentOS 5.6 x86_64 test server that syncs any deleted files in a directory.
/usr/bin/script
#!/bin/sh
inotifywait -m -e delete /home/user/test | while read file; do
# log event here
done
The script alone works fine. However, the... (4 Replies)
Discussion started by: TECK
4 Replies
8. UNIX for Dummies Questions & Answers
:)Hi all,
Please advice me is it safer to use the following command to free up (truncate) space in HDD.
1) > /usr/adm/messages
2) > /usr/adm/sulog
3) > /usr/adm/ctlog
4) > /tmp
5) > /usr/adm/sa
6) > /var/spool
Thanks in advance
Rukshan (1 Reply)
Discussion started by: rukshan4u2c
1 Replies
LEARN ABOUT HPUX
xtvagetsubvalues
XtVaGetSubvalues() XtVaGetSubvalues()
Name
XtVaGetSubvalues - retrieve the current values of subpart resources, using varargs argument style.
Synopsis
void XtVaGetSubvalues(base, resources, num_resources, ..., NULL)
XtPointer base;
XtResourceList resources;
Cardinal num_resources;
Inputs
base Specifies the base address of the subpart data structure for which the resources should be retrieved.
resources Specifies the subpart resource list.
num_resources
Specifies the number of resources in the resource list.
..., NULL A NULL-terminated variable-length list of resource names and the addresses at which the values of those resources are to be
stored.
Availability
Release 4 and later.
Description
XtVaGetSubvalues() obtains the values of the resources named in the variable-length argument list (and described in the resource list
resources) from the subpart structure pointed to by base, and stores those values at the addresses specified in the variable length argu-
ment list. Note that the special symbol XtVaTypedArg is not supported by XtVaGetSubvalues(). If XtVaTypedArg is specified in the list, a
warning message is issued and the entry is then ignored.
XtVaGetSubvalues() is identical to XtGetSubvalues() except that the args array of resource names and values and the num_args argument of
that function are replaced with a NULL-terminated variable-length argument list.
See XtGetSubvalues() for more information on this function. See XtVaSetValues() for more information on using variable-length argument
lists to specify resources. See XtGetApplicationResources() for information on how to declare an XtResourceList.
See Also
XtGetApplicationResources(1), XtGetSubvalues(1), XtVaSetValues(1).
Xt - Resource Management XtVaGetSubvalues()