473,804 Members | 3,272 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

010 is 8 and not 10 :(

Hi,

I find that numbers beginning with a zero are evaluated in base 8.

Example -
int numbers[] = { 001,
010, // This is treated as 8 and
not as 10 :( Strange :(:(
};

I find that compiler does not complain and continues performing after
converting the octal to the corresponding decimal value :(:(.
Initially i was shocked , But later practised to it.

This option of '0' before a number to treat it as octal in C causes
problem sometimes(Easy path for error) .
Octal, we just have a 0 infront of the number in 'C' .
There should be someother convention ? What do you think ?

Thx,
Karthik Balaguru

Sep 13 '07 #1
35 2309
karthikbalaguru wrote:
Hi,

I find that numbers beginning with a zero are evaluated in base 8.

Example -
int numbers[] = { 001,
010, // This is treated as 8 and
not as 10 :( Strange :(:(
};

I find that compiler does not complain and continues performing after
converting the octal to the corresponding decimal value :(:(.
Initially i was shocked , But later practised to it.

This option of '0' before a number to treat it as octal in C causes
problem sometimes(Easy path for error) .
Octal, we just have a 0 infront of the number in 'C' .
There should be someother convention ? What do you think ?
Such as?

The convention goes back a long way and is never likely to change.

--
Ian Collins.
Sep 13 '07 #2
karthikbalaguru <ka************ ***@gmail.comwr ote:
I find that numbers beginning with a zero are evaluated in base 8.
No shit, Sherlock. This is how C is, and always has been. Deal.

Richard
Sep 13 '07 #3
On Sep 13, 12:40 pm, karthikbalaguru <karthikbalagur ...@gmail.com>
wrote:
Hi,

I find that numbers beginning with a zero are evaluated in base 8.

Example -
int numbers[] = { 001,
010, // This is treated as 8 and
not as 10 :( Strange :(:(
};

I find that compiler does not complain and continues performing after
converting the octal to the corresponding decimal value :(:(.
Initially i was shocked , But later practised to it.

This option of '0' before a number to treat it as octal in C causes
problem sometimes(Easy path for error) .
Octal, we just have a 0 infront of the number in 'C' .
There should be someother convention ? What do you think ?

Thx,
Karthik Balaguru
It should be : (No comma in the earlier snapshot of code)

Example -
int numbers[] = { 001,
010 // This is treated as 8 and not as 10 :
( Strange :(:(
};

Thx,
Karthik Balaguru

Sep 13 '07 #4
karthikbalaguru wrote:
Hi,

I find that numbers beginning with a zero are evaluated in base 8.
Exactly as defined by the language.
>
Example -
int numbers[] = { 001,
010, // This is treated as 8 and
not as 10 :( Strange :(:(
No it's not. Anyone who was awake during the first day of their lessons
in C knows that integers represented by 0 followed by digits are octal
and integers represented by 0x or 0X followed by digits are hex.
But some people don't stay awake in class or read their textbooks and
then call the obvious strange.
I find that compiler does not complain and continues performing after
converting the octal to the corresponding decimal value :(:(.
Initially i was shocked , But later practised to it.
You were shocked by what you should have known, had you not been
comatose. How strange.
>
This option of '0' before a number to treat it as octal in C causes
problem sometimes(Easy path for error) .
Octal, we just have a 0 infront of the number in 'C' .
There should be someother convention ? What do you think ?
That things are just fine as they are, as long as you don't ever get a
programming job, or at least until your attention span grows to, say, 15
seconds.

Sep 13 '07 #5
karthikbalaguru wrote:
Hi,

I find that numbers beginning with a zero are evaluated in base 8.

Example -
int numbers[] = { 001,
010, // This is treated as 8 and
not as 10 :( Strange :(:(
};

I find that compiler does not complain and continues performing after
converting the octal to the corresponding decimal value :(:(.
Initially i was shocked , But later practised to it.

This option of '0' before a number to treat it as octal in C causes
problem sometimes(Easy path for error) .
Octal, we just have a 0 infront of the number in 'C' .
There should be someother convention ? What do you think ?
If you find that this is a problem, there are editors which highlight octal
constants (such as 010) in a different colour to decimal constants (such as 10)
to make it obvious that it means something different.

Philip

--
Philip Potter pgp <atdoc.ic.ac. uk
Sep 13 '07 #6
On Sep 13, 1:55 pm, Philip Potter <p...@see.sig.i nvalidwrote:
karthikbalaguru wrote:
Hi,
I find that numbers beginning with a zero are evaluated in base 8.
Example -
int numbers[] = { 001,
010, // This is treated as 8 and
not as 10 :( Strange :(:(
};
I find that compiler does not complain and continues performing after
converting the octal to the corresponding decimal value :(:(.
Initially i was shocked , But later practised to it.
This option of '0' before a number to treat it as octal in C causes
problem sometimes(Easy path for error) .
Octal, we just have a 0 infront of the number in 'C' .
There should be someother convention ? What do you think ?

If you find that this is a problem, there are editors which highlight octal
constants (such as 010) in a different colour to decimal constants (such as 10)
to make it obvious that it means something different.

Philip

--
Philip Potter pgp <atdoc.ic.ac. uk- Hide quoted text -

- Show quoted text -
Thats a coool idea to avoid mistakes without requesting a change in C
Language.
Thx.

Karthik Balaguru

Sep 13 '07 #7
karthikbalaguru wrote:
On Sep 13, 1:55 pm, Philip Potter <p...@see.sig.i nvalidwrote:
>karthikbalagur u wrote:
>>Hi,
I find that numbers beginning with a zero are evaluated in base 8.
>If you find that this is a problem, there are editors which highlight octal
constants (such as 010) in a different colour to decimal constants (such as 10)
to make it obvious that it means something different.
Thats a coool idea to avoid mistakes without requesting a change in C
Language.
I think you should request the change, just to see what response you get...
Sep 13 '07 #8
In article <11************ *********@o80g2 000hse.googlegr oups.com>,
karthikbalaguru <ka************ ***@gmail.comwr ites
>On Sep 13, 1:55 pm, Philip Potter <p...@see.sig.i nvalidwrote:
>karthikbalagur u wrote:
Hi,
I find that numbers beginning with a zero are evaluated in base 8.
Example -
int numbers[] = { 001,
010, // This is treated as 8 and
not as 10 :( Strange :(:(
};
I find that compiler does not complain and continues performing after
converting the octal to the corresponding decimal value :(:(.
Initially i was shocked , But later practised to it.
This option of '0' before a number to treat it as octal in C causes
problem sometimes(Easy path for error) .
Octal, we just have a 0 infront of the number in 'C' .
There should be someother convention ? What do you think ?

If you find that this is a problem, there are editors which highlight octal
constants (such as 010) in a different colour to decimal constants
(such as 10)
to make it obvious that it means something different.

Philip

--
Philip Potter pgp <atdoc.ic.ac. uk- Hide quoted text -

- Show quoted text -

Thats a coool idea to avoid mistakes without requesting a change in C
Language.
Thx.

Karthik Balaguru
1
"cool" wasn't cool the first time it was in fashion 40 years ago. I
remind my "cool" sons about that. "Man" and "dude" are also back.
Nostalgia isn't etc... :-)

2
Syntax highlighting has been around almost as long as colour monitors.
(About 25 years.) Strangely that is no recognised standard for colour
highlighting.

3
Octal constants have always been in the C language. If you did not know
that you need a BASIC course in C programming.

4
Many coding standards ban the use of Octal constants

5
0.123 is a FLOAT not an Octal number :-)

6
Request for change in C language denied

--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills Staffs England /\/\/\/\/
/\/\/ ch***@phaedsys. org www.phaedsys.org \/\/\
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Sep 13 '07 #9
Chris Hills wrote:
In article <11************ *********@o80g2 000hse.googlegr oups.com>,
karthikbalaguru <ka************ ***@gmail.comwr ites
>Thats a coool idea to avoid mistakes without requesting a change in C
Language.
Thx.

Karthik Balaguru

1
"cool" wasn't cool the first time it was in fashion 40 years ago. I
remind my "cool" sons about that. "Man" and "dude" are also back.
Nostalgia isn't etc... :-)
Strange, I can't find any reference to "cool" in the C standard. It must be a
compiler extension on his platform :)
2
Syntax highlighting has been around almost as long as colour monitors.
(About 25 years.) Strangely that is no recognised standard for colour
highlighting.
Yes, but some syntax highlighters do not distinguish octal constants from
decimal constants. The OP may have this problem.
3
Octal constants have always been in the C language. If you did not know
that you need a BASIC course in C programming.
Or perhaps he forgot? Quite reasonable for a beginner; he might have read the
relevant section, but since octal constants are so rarely used there's little to
back up the learning process. I only really remember about octal constants
because my editor colours them in.
5
0.123 is a FLOAT not an Octal number :-)
Actually, it's a double. 0.123f is a float.

--
Philip Potter pgp <atdoc.ic.ac. uk
Sep 13 '07 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
11256
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL) on the server because of that. Our site will have an SSL certificate next week, so I would like to use AIM instead of SIM, however, I don't know how to send data via POST over https and recieve data from the Authorize.net server over an https...
2
5848
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues to execute the code until the browser send his reply to the header instruction. So an exit(); after each redirection won't hurt at all
3
23043
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which field is completed.
0
8502
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. 354 roberto@ausone:Build/php-4.3.2> ldd /opt/php4/bin/php libsablot.so.0 => /usr/local/lib/libsablot.so.0 libstdc++.so.5 => /usr/local/lib/libstdc++.so.5 libm.so.1 => /usr/lib/libm.so.1
1
8614
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the column below. The viewer can select states from the drop down lists above the other two columns as well. If the viewer selects only one, only one column fills. If the viewer selects two states, two columns fill. Etc. I could, if appropriate, have...
4
18311
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the user comes back to a page where he had a submitted POST data the browser keeps telling that the data has expired and asks if repost. How to avoid that? I tried registering all POST and GET vars as SESSION vars but
1
6876
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url http://www.mis.gla.ac.uk/biquery/training/ but each of the courses held have maximum of 8 people that could be
2
31450
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value to :parameter I dont like the idea of making the SQL statement on the fly without binding parameters as I dont want a highly polluted SQL cache.
3
23607
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the results of the picture half the size. The PHP I have installed support 1.62 or higher. And all I would like to do is take and image and make it fit a 3x3. Any suggestions to where I should read or look would be appreciated.
0
9708
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10589
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10340
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
10085
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6857
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5663
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4302
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3828
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2999
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.