05-22-2011
Quote:
Originally Posted by
Corona688
HP-UX, also.
d) A pointer is a reference. In C++ you have the & type, which can be a bit dangerous since there's no straightforward way to errorcheck it...
Does't HP-UX put a string literal in readonly section of a executable file? I think this is more a complier thing than OS thing on HP-UX.
Maybe pointers are dangerous than references, because pointers are TYPE related and can be casted to pointer to any object while references are OBJECTS related. Right?
Last edited by vistastar; 05-23-2011 at 02:03 AM..
10 More Discussions You Might Find Interesting
1. Programming
I have two string returning function in ESQL/C
char *segment_name(lbuffer)
char *lbuffer;
{.....
and
char *get_bpdvalue(f_name)
char *f_name;
{......
both declared above main()
char *get_bpdvalue();
char *segment_name();
my problem is segment_name works on sprintf and strcpy... (5 Replies)
Discussion started by: jisc
5 Replies
2. Programming
hi all,
my requirement is to create a thread by calling another function.
i.e i dont call pthread_create directly from main, but by calling another function (createThd - below ), from main.
Example:
void *thread_function(void *arg) { /* thread function */
int i;
rc =... (3 Replies)
Discussion started by: wolwy_pete
3 Replies
3. Shell Programming and Scripting
Hi all,
I am very new to BASH shell programming. I need to return an integer from a function to the caller function. I did this:
but it keeps giving me wrong return:
Can someone help me out here, please?
Thanks (2 Replies)
Discussion started by: alirezan
2 Replies
4. Programming
hi
how can I return multiple values from a C function. I tried the following:
#include <stdio.h>
void foo(int id, char *first_name, char *last_name)
{
/*
this is just an example to illustrate my problem... real code makes
use of the "id" parameter.
*/
first_name = (char... (8 Replies)
Discussion started by: Andrewkl
8 Replies
5. Shell Programming and Scripting
Hi All
In my script, I can call on several functions. I have a logging function that is called by any of these functions. What I would like is some way of identifying which function I am using and pass this to the log function as some parameter.
Is there some built in command or way of... (3 Replies)
Discussion started by: kingpin2502
3 Replies
6. Programming
I am working on a C/Unix application from last 2 years which communicates with other systems using proprietary format of my client. We have a function written in C which returns integer, which is response from other system to the request message initiated by my system. This return value is then... (1 Reply)
Discussion started by: dpmore
1 Replies
7. Programming
I am working on the application in which I have to fetch values from the database and paste in url and send it to portal.
table=get_result("SELECT serialno,cas,Mode,FLC,TLC,location,CompName,CompCode,FG,FC,DispNo,TruckNo,LWbill,RRGPN,INVNO,DCN,RQTY,DQTY,SQTY,DDATE,RDATE,SDATE,TTIME FROM... (1 Reply)
Discussion started by: er.rohan88
1 Replies
8. Programming
Hi guys.
how a functions such fdopen, ... can return pointer?
are these functions use static memory(variables)? (6 Replies)
Discussion started by: majid.merkava
6 Replies
9. Programming
H friends,
As we know, a function returns a value and that value is saved somwhere. like
int Sum( int x, int y )
{
return x + y;
}
Total = Sum( 10, 20 );
The value 30 is saved in variable Total.
Now the question is, what int value does the function main return, and where is it... (5 Replies)
Discussion started by: gabam
5 Replies
10. Programming
Hi All,
I am using malloc function for allocating dynamic memory.
When I am using below code on Linux server its working fine, but When I am trying the same code on HP UNIX server its returning NULL.
below is a fragment of code in which it is giving problem.
tmp = (format_tree... (4 Replies)
Discussion started by: Taher Saifuddin
4 Replies
uswitch(2) System Calls Manual uswitch(2)
NAME
uswitch - Get or set compatibility environment specific behavior for a calling process through the uswitch value.
SYNOPSIS
#include <sys/uswitch.h>
long uswitch(
long cmd,
long mask );
PARAMETERS
Specifies the requested actions. The valid cmd values are: Returns the current uswitch value for the calling process. If mask is non-zero,
it returns the status of specific uswitch bit-mask(s). Changes the current uswitch value for the calling process as specified by the mask
bit-mask(s). The following bit-masks are valid when specified with either of the values for the cmd parameter: Specifies System V NULL
pointer behavior. Specifies process requests enhanced core file naming.
DESCRIPTION
The uswitch system call is used to get or change the compatibility environment specific behavior in Tru64 UNIX. Any changes affect the
calling process and its children.
When the USW_NULLP bit of uswitch is set to 1, the System V method of treating NULL pointers is applied. In this method, references to a
NULL pointer always returns zero (0). When this bit-mask is reset to zero (0), subsequent references to a NULL pointer generate a segmen-
tation violation signal (SIGSEGV).
When the USW_CORE bit of uswitch is set to 1, the process requests enhanced core file naming. The bit-mask, when set, can be inherited
when the process forks. The bit-mask is cleared when an exec system call is executed. See core(4) for more information about core files.
Any write(2) references to NULL pointers generate a segmentation violation signal (SIGSEGV) regardless of the uswitch value.
NOTES
Usage of this system call may make the application non-portable.
RETURN VALUES
Upon successful completion, either the current or new uswitch value for mask is returned. Otherwise, a value of -1 is returned and errno
is set to indicate the error.
ERRORS
If the uswitch system call fails, the uswitch value remains unchanged and errno is set to the following: The mask is greater than USW_MAX
or less than USW_MIN.
EXAMPLES
The following code sample sets the bit mask for System V NULL pointer behavior:
long uswitch_val;
... uswitch_val = uswitch(USC_GET,0); /* Gets current value*/ uswitch(USC_SET, uswitch_val | USW_NULLP); /* Sets USW_NULLP
bit */ The following code sample sets the bit mask for enhanced core file names:
long uswitch_val;
... uswitch_val = uswitch(USC_GET,0); /* Gets current value*/ uswitch(USC_SET, uswitch_val | USW_CORE); /* Sets USW_CORE
bit */
uswitch(2)