11-20-2008
strange effect: if ... else in C influence a previous statement
I write a short code in c
it may work well, but when I add an if ... else ... structure, a computation before the structure can not give a correct result
compilation and run can do well, but the result is wrong. Very strange
(1)
y2 = expression; //y2 = 0 always 0 error
.................
add : if(a->is_root) c = m2 - y2;
else f = m2 - y2;
(2)
y2 = expression; //y2 = 0 always 0 error
.................
add : if(a->is_root) c = m2 - y2;
if(!a->is_root) f = m2 - y2;
(3)
y2 = expression; // y2 = normal value; normal
.................
add : //if(a->is_root) c = m2 - y2;
if(!a->is_root) f = m2 - y2;
(4)
y2 = expression; // y2 = normal value; normal
.................
add : if(a->is_root) c = m2 - y2;
//if(!a->is_root) f = m2 - y2;
(5)
y2 = expression; // y2 = normal value; normal
add : //if(a->is_root) c = m2 - y2;
//if(!a->is_root) f = m2 - y2;
Trouble: can not use if... else ... normally
Question: (1) if... else ... can influence a previous statement, why?
(2) How to solve the problem?
Last edited by cdbug; 11-20-2008 at 05:38 AM..
7 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I run the following command in some of my folders... and ended up with a huge mess!!
find . -type f -exec perl -e 's/blabla/zzzxxxx/gi' -p -i.bak {} \;
I had to kill the process and later when I checked with one of my folders..
ls
vaditerm.dt.bak
vaditerm.dt.bak.bak... (2 Replies)
Discussion started by: sskb
2 Replies
2. UNIX for Advanced & Expert Users
hi there,
i am porting kernel 2.2 driver program to kernel 2.6. for some extent i am successfull but some times the system gets hanged. what might be the problem? i am not able to get any help from log messages as nothing is being printed at that moment. hey does this kernel preemptiveness and... (2 Replies)
Discussion started by: sriram.ec
2 Replies
3. UNIX for Dummies Questions & Answers
Hi,
I have noticed that rm -if will perform completely different to rm -fi. Whats the pattern of how I put my options to the script in relation to how it will act.
i.e
rm -fi treat the remove as interative but
rm -if treats it as forced
Thansk, Chris. (1 Reply)
Discussion started by: Chiefos
1 Replies
4. Virtualization and Cloud Computing
2008-10-31T22:46:14+01:00
http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef010535ce543e970c-800wi
Nicholas Carr (and here) has some problems with Tim O'Reilly's theory about the cloud and the network effect.
http://feeds.feedburner.com/~f/GeekAndPoke?i=OFn0M... (0 Replies)
Discussion started by: Linux Bot
0 Replies
5. UNIX for Dummies Questions & Answers
A basic cron question and I hope I explain it enough.
If a person creates a file to use with cron and issues the followin command:
crontab
I understand this will set the cron entries to whatever is in . However, if we now edit the crontab with:
crontab -e
and save, how does cron... (3 Replies)
Discussion started by: niswonp
3 Replies
6. Shell Programming and Scripting
I want to remove commands having no output. In below text file.
bash-3.2$ cat abc_do_it.txt
grpg10so>show trunk group all status
grpg11so>show trunk group all status
grpg12so>show trunk group all status
GCPKNYAIGT73IMO 1440 1345 0 0 94 0 0 INSERVICE 93% 0%... (4 Replies)
Discussion started by: Raza Ali
4 Replies
7. Shell Programming and Scripting
Hi,
Here is my code as below:
test.ksh:
=======
#!/bin/ksh
option="${1}"
while
do
case $1 in
-f) FILE="${2}"
echo "File name is $FILE"
;;
-d) DIR="${2}"
echo "Dir name is $DIR"
;;
-*)
echo "`basename ${0}`:usage: | " (5 Replies)
Discussion started by: zaq1xsw2
5 Replies
LEARN ABOUT DEBIAN
ausearch_add_timestamp_item
AUSEARCH_ADD_TIMESTAMP_ITEM(3) Linux Audit API AUSEARCH_ADD_TIMESTAMP_ITEM(3)
NAME
ausearch_add_timestamp_item - build up search rule
SYNOPSIS
#include <auparse.h>
int ausearch_add_timestamp_item(auparse_state_t *au, const char *op, time_t sec, unsigned milli, ausearch_rule_t how)
DESCRIPTION
ausearch_add_timestamp_item adds an event time condition to the current audit search expression. The search conditions can then be used to
scan logs, files, or buffers for something of interest. The op parameter specifies the desired comparison. Legal op values are <, <=, >=, >
and =. The left operand of the comparison operator is the timestamp of the examined event, the right operand is specified by the sec and
milli parameters.
The how value determines how this search condition will affect the existing search expression if one is already defined. The possible val-
ues are:
AUSEARCH_RULE_CLEAR
Clear the current search expression, if any, and use only this search condition.
AUSEARCH_RULE_OR
If a search expression E is already configured, replace it by (E || this_search_condition).
AUSEARCH_RULE_AND
If a search expression E is already configured, replace it by (E && this_search_condition).
RETURN VALUE
Returns -1 if an error occurs; otherwise, 0 for success.
APPLICATION USAGE
Use ausearch_add_item(3) and ausearch_add_interpreted_item(3) to add conditions that check audit record fields. Use ausearch_add_expres-
sion(3) to add complex search expressions using a single function call.
SEE ALSO
ausearch_add_expression(3), ausearch_add_item(3), ausearch_add_interpreted_item(3), ausearch_add_regex(3), ausearch_set_stop(3), ause-
arch_clear(3), ausearch_next_event(3), ausearch-expression(5).
AUTHOR
Miloslav Trmac
Red Hat Nov 2007 AUSEARCH_ADD_TIMESTAMP_ITEM(3)