Sponsored Content
Top Forums Programming A trivial XOR doubt in a program Post 302247279 by royalibrahim on Wednesday 15th of October 2008 10:09:49 AM
Old 10-15-2008
A trivial XOR doubt in a program

Hi,

I am trying to reverse a string using the following program utilizing the Exclusive OR bit operation:

Code:
int main() {
   char str[] = "Quraish";
   char *p = str, temp;
   char *q = str + strlen(str) - 1;
   while ( p != q ) {
      if (*p != *q) {
         *p ^= *q; *q ^= *p; *p ^= *q;
      }
      p++; q--;
   }
   printf("%s \n", str);
}

The above code works perfectly alright, but if I change the line
Code:
*p ^= *q; *q ^= *p; *p ^= *q;

to
Code:
*p ^= *q ^= *p ^= *q;

(I am trying to do swapping inline)
it prints an empty string. Could anyone tell me why this behaviour is?
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

trivial awk question

i posted a reply the other day and needed an answer to this question while i was clarifyiing a few matter.. "how to compare to date variable in string format without having to compare word for word".. my reply was to try to use awk to compare the strings.. I wasn't quite sure if i remembered how... (2 Replies)
Discussion started by: moxxx68
2 Replies

2. Programming

resetting counter using bitwise XOR

Hi ! How to reset a variable to 0 after a reset value, say 10 using bitwise XOR. For example, int cnt=0; if(cnt<10) cnt++; else cnt = 0; How can we achieve this by using XOR only. thanks, (1 Reply)
Discussion started by: mrgubbala
1 Replies

3. Shell Programming and Scripting

xor 2 values in ksh?

i have to xor two variables in ksh. how to do that? tia, DN2 (5 Replies)
Discussion started by: DukeNuke2
5 Replies

4. Shell Programming and Scripting

Doubt in this trivial awk code

Hi, What is the difference in the following two awk one-liners? awk -F, '{s++} END {if (s == 1 && $4 > "09:10:00") {print $2, $4}}' f1 awk -F, '{s++} s == 1 && $4 > "09:10:00" {print $2, $4}' f1 Even though, all the 2nd column values have duplicate records, the first code does not give any... (4 Replies)
Discussion started by: royalibrahim
4 Replies

5. Shell Programming and Scripting

Trivial perl doubt about FILE

Hi, In the following perl code: #!/usr/bin/perl -w if (open(FILE, "< in_file")) { while (<FILE>) { chomp($_); if ($_ =~ /patt$/) { my $f = (split(" ", $_)); print "$f\n"; } } close FILE; } Why changing the "FILE" as... (4 Replies)
Discussion started by: royalibrahim
4 Replies

6. Programming

Trivial doubt about C function pointer

Hi, In the below C code, #include <stdio.h> void print() { printf("Hello\n"); } int main() { void (*f)() = (void (*)()) print; f(); (*f)(); } I wonder, how the syntaxes "f()" and "(*f)()" are treated as same without any error? Is this an improvement or ANSI/ISO... (1 Reply)
Discussion started by: royalibrahim
1 Replies

7. UNIX for Dummies Questions & Answers

XOR between strings

I am aware of truth table for XOR between binary values . Out of curious in would like to know how XOR works between 2 strings which contain alphabets . For example A ^ B How it works internally? Please help me to understand this Thanks (1 Reply)
Discussion started by: pandeesh
1 Replies

8. FAQ Submission Queue

Analysis in bitwise XOR

The purpose of this article is revealing the unrevealed parts of the bitwise XOR. As we aware, the truth table for the XOR operator is : A B A^B 0 0 0 0 1 1 1 0 1 1 1 0 For example , 1^2 will be calculated as given below: First the operands... (1 Reply)
Discussion started by: pandeesh
1 Replies

9. UNIX for Dummies Questions & Answers

XOR two strings

hi, i am new to shell programming, can u please tell me how to perform XOr operation of two strings. i tried to do xor using ^symbol but this doesnt work. help me with this Thanks (12 Replies)
Discussion started by: anil_uvce
12 Replies
Imager::QRCode(3pm)					User Contributed Perl Documentation				       Imager::QRCode(3pm)

NAME
Imager::QRCode - Generate QR Code with Imager using libqrencode SYNOPSIS
use Imager::QRCode; my $qrcode = Imager::QRCode->new( size => 2, margin => 2, version => 1, level => 'M', casesensitive => 1, lightcolor => Imager::Color->new(255, 255, 255), darkcolor => Imager::Color->new(0, 0, 0), ); my $img = $qrcode->plot("blah blah"); $img->write(file => "qrcode.gif"); # or instance method use Imager::QRCode qw(plot_qrcode); my $img = plot_qrcode("blah blah", \%params); $img->write(file => "qrcode.gif"); DESCRIPTION
This module allows you to generate QR Code with Imager. This module use libqrencode '2.0.0' and above. METHODS
new $qrcode = Imager::QRCode->new(%params); The "new()" constructor method instantiates a new Imager::QRCode object. "new()" accepts the following parameters. o "size" - Horizontal and vertical size of module(dot). Default is 4. o "margin" - Margin size of QR Code. Default is 3. o "level" - Error collectin level. Valid values are 'M', 'L', 'Q' or 'H'. Default is 'L'. o "version" - Version of the symbol. If specify '0', this module chooses the minimum version for the input data. Default is '0'. o "mode" - Encoding mode. Valid values are 'numerical', 'alpha-numerical', '8-bit' or 'kanji'. Default is '8-bit'. If not give "casesensitive" then should be given "mode". If 'kanji' is given, characters will be encoded as Shift-JIS characters. If '8-bit' is given, all of non-alpha-numerical characters will be encoded as is. If you want to embed UTF-8 string, choose '8-bit'. o "casesensitive" - If your application is case-sensitive using 8-bit characters, set to '1'. Default is '0'. plot($text) $img = $qrcode->plot("blah blah"); Create a new QR Code image. This method returns Imager object ploted QR Code with the given text. INSTANT METHODS
plot_qrcode($text, \%params) Instant method. $text is input text. %params is same parameter as "new()". SEE ALSO
"Imager", "http://www.qrcode.com/", "http://megaui.net/fukuchi/works/qrencode/index.en.html" AUTHOR
Yoshiki KURIHARA "<kurihara __at__ cpan.org>" THANKS
Tokuhiro Matsuno LICENCE AND COPYRIGHT
Copyright (c) 2011, Yoshiki KURIHARA "<kurihara __at__ cpan.org>". This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic. perl v5.14.2 2012-12-16 Imager::QRCode(3pm)
All times are GMT -4. The time now is 11:49 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy