473,322 Members | 1,493 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,322 software developers and data experts.

Reliably determine sign value of double in C90/C89

Hello.

I want to be able to portably determine whether or not a given double
value is negative.

Under C99, I do:

if (signbit(d)) negative = 1;

Or, if the implementation doesn't provide signbit(), I do:

union real {
unsigned long long n;
double d;
};

if ((real.n >63) & 1) negative = 1;

However, what if I am to support an implementation that only provides
C89 (no long long, no signbit())?

Anybody got a reliable, portable method of handling this?

thanks,
mc

Apr 27 '07 #1
27 6029
ar**********@googlemail.com wrote, On 27/04/07 21:48:
Hello.

I want to be able to portably determine whether or not a given double
value is negative.

Under C99, I do:

if (signbit(d)) negative = 1;
<snip>
However, what if I am to support an implementation that only provides
C89 (no long long, no signbit())?

Anybody got a reliable, portable method of handling this?
What is wrong with
if (d < 0)
?

It won't detect negative 0, but is that important to you?
--
Flash Gordon
Apr 27 '07 #2
On Apr 27, 9:53 pm, Flash Gordon <s...@flash-gordon.me.ukwrote:
>
Anybody got a reliable, portable method of handling this?

What is wrong with
if (d < 0)
?

It won't detect negative 0, but is that important to you?
Yes, unfortunately it is.

mc

Apr 27 '07 #3
In article <11**********************@b40g2000prd.googlegroups .com>,
<ar**********@googlemail.comwrote:
>Hello.

I want to be able to portably determine whether or not a given double
value is negative.
[...]
>Anybody got a reliable, portable method of handling this?
Why isn't "double_val<0", possibly combined with tests for magic values
like NaN that will or won't pass this test when they shoudn't or should,
reliable or portable enough?

(I am not a numerical analyst; there may be a valid reason why not.
But if you're asking C programmers who aren't numerical analysts how to
do this, you should be able to tell us why the obvious solution doesn't
meet your standards.)
dave

--
Dave Vandervies dj******@csclub.uwaterloo.ca

Surprise your compiler. Write better code than it asks you to.
--Keith Thompson in comp.lang.c
Apr 27 '07 #4
<ar**********@googlemail.comha scritto nel messaggio
news:11**********************@b40g2000prd.googlegr oups.com...
Hello.

I want to be able to portably determine whether or not a given double
value is negative.

Under C99, I do:

if (signbit(d)) negative = 1;

Or, if the implementation doesn't provide signbit(), I do:

union real {
unsigned long long n;
double d;
};

if ((real.n >63) & 1) negative = 1;

However, what if I am to support an implementation that only provides
C89 (no long long, no signbit())?

Anybody got a reliable, portable method of handling this?
if (d < 0) negative = 1;
Apr 27 '07 #5

<ar**********@googlemail.comha scritto nel messaggio
news:11**********************@s33g2000prh.googlegr oups.com...
On Apr 27, 9:53 pm, Flash Gordon <s...@flash-gordon.me.ukwrote:
>>
Anybody got a reliable, portable method of handling this?

What is wrong with
if (d < 0)
?

It won't detect negative 0, but is that important to you?

Yes, unfortunately it is.
Then use if (d != fabs(d))
Apr 27 '07 #6
On Apr 27, 10:18 pm, "Army1987" <please....@for.itwrote:
>
Then use if (d != fabs(d))
Ah! Yes, that's the one. Very smart.

thanks,
MC

Apr 27 '07 #7
Army1987 wrote On 04/27/07 17:18,:
<ar**********@googlemail.comha scritto nel messaggio
news:11**********************@s33g2000prh.googlegr oups.com...
>>On Apr 27, 9:53 pm, Flash Gordon <s...@flash-gordon.me.ukwrote:
>>>>Anybody got a reliable, portable method of handling this?

What is wrong with
if (d < 0)
?

It won't detect negative 0, but is that important to you?

Yes, unfortunately it is.


Then use if (d != fabs(d))
Won't work; -0 is equal to +0, and there are problems
with NaNs and infinities, too, if they exist. That's
probably why signbit() exists, and I think it's the best
solution to artifact's problem.

Suggestion: Write the code to use signbit(), and use
the system-provided signbit() if one exists. For platforms
where it doesn't, provide your own platform-specific code
to implement it. 100% portability can't be guaranteed; in
particular, the kludge with a union will not always work.
(The sign bit may not be in the position where you expect
it, `long' and `double' may not be the same size, ...)

--
Er*********@sun.com
Apr 27 '07 #8
On Apr 27, 10:01 pm, dj3va...@caffeine.csclub.uwaterloo.ca (Dave
Vandervies) wrote:
>
Anybody got a reliable, portable method of handling this?

Why isn't "double_val<0", possibly combined with tests for magic values
like NaN that will or won't pass this test when they shoudn't or should,
reliable or portable enough?

(I am not a numerical analyst; there may be a valid reason why not.
But if you're asking C programmers who aren't numerical analysts how to
do this, you should be able to tell us why the obvious solution doesn't
meet your standards.)
The simple answer is that I need to be able to detect negative zero
(after
doing all appropriate checks for NaN, inf, -inf etc.

MC

Apr 27 '07 #9
ar**********@googlemail.com wrote:
Hello.

I want to be able to portably determine whether or not a given double
value is negative.
inline int negativep(double x) { return x < 0; }
Under C99, I do:

if (signbit(d)) negative = 1;
see above.
>
Or, if the implementation doesn't provide signbit(), I do:

union real {
unsigned long long n;
double d;
};

if ((real.n >63) & 1) negative = 1;
see above.
>
However, what if I am to support an implementation that only provides
C89 (no long long, no signbit())?
see above.
>
Anybody got a reliable, portable method of handling this?
see above.
Apr 27 '07 #10
On Apr 27, 10:39 pm, Eric Sosman <Eric.Sos...@sun.comwrote:
Army1987 wrote On 04/27/07 17:18,:
<artifact....@googlemail.comha scritto nel messaggio
news:11**********************@s33g2000prh.googlegr oups.com...
>On Apr 27, 9:53 pm, Flash Gordon <s...@flash-gordon.me.ukwrote:
>>>Anybody got a reliable, portable method of handling this?
>>What is wrong with
if (d < 0)
?
>>It won't detect negative 0, but is that important to you?
>Yes, unfortunately it is.
Then use if (d != fabs(d))

Won't work; -0 is equal to +0, and there are problems
with NaNs and infinities, too, if they exist. That's
probably why signbit() exists, and I think it's the best
solution to artifact's problem.

Suggestion: Write the code to use signbit(), and use
the system-provided signbit() if one exists. For platforms
where it doesn't, provide your own platform-specific code
to implement it. 100% portability can't be guaranteed; in
particular, the kludge with a union will not always work.
(The sign bit may not be in the position where you expect
it, `long' and `double' may not be the same size, ...)

--
Eric.Sos...@sun.com
Hello.

I have taken care of most of these possibilities, as far as I can
tell.

The code first checks for infinity and negative infinity by using
whichever of isinf(), isfinite() or finite() is available.

Then it checks for infinity with isnan() which seems to be
portable.

Then it checks for negative zero with the following:

#if defined(HAVE_LONGLONG)
union real {
double d;
unsigned long long n;
};
#else
union real {
double d;
unsigned long n;
};
#endif

#if !defined(HAVE_INLINE)
#define inline
#endif

static inline unsigned int is_negative(double d)
{
union real real;
real.d = d;

#if defined(HAVE_MATH_SIGNBIT)
return signbit(real.d);
#endif

if (sizeof(real.n) == sizeof(double) == 64)
return (real.n >63) & 1;
else
return real.d != fabs(real.d);
}

I'm sure this can be improved, I'm just not sure how yet...

MC

Apr 27 '07 #11
ar**********@googlemail.com wrote, On 27/04/07 22:03:
On Apr 27, 9:53 pm, Flash Gordon <s...@flash-gordon.me.ukwrote:
>>Anybody got a reliable, portable method of handling this?
What is wrong with
if (d < 0)
?

It won't detect negative 0, but is that important to you?

Yes, unfortunately it is.
Ah well, for C90 you are down to system specifics and #if/#ifdef then.
Remember there is the IEEE stuff which will help with a number of
implementations.
--
Flash Gordon
Apr 27 '07 #12
In article <11**********************@t39g2000prd.googlegroups .com>,
<ar**********@googlemail.comwrote:
if (sizeof(real.n) == sizeof(double) == 64)
This won't do what you seem to expect it to.

You probably want
--------
if( CHAR_BIT==8
&& sizeof real.n == 8 /* =real.n is a 64-bit integer type*/
&& sizeof real.d == 8) /* =real.d is a 64-bit floating point type*/
--------
(Don't forget to #include <limits.hfor CHAR_BIT) or possibly just
--------
if(sizeof real.n == sizeof real.d)
--------

>#if defined(HAVE_MATH_SIGNBIT)
return signbit(real.d);
#endif

if (sizeof(real.n) == sizeof(double) == 64)
return (real.n >63) & 1;
else
return real.d != fabs(real.d);
I would write this as
--------
#if defined(HAVE_MATH_SIGNBIT)
return signbit(real.d);
#elif defined(HAVE_KNOWN_DOUBLE_FORMAT)
#ifdef HAVE_RIGHT_SIZE_INTEGER
return (real.n >63) & 1;
#else
/*Code to extract sign bit from double's bit pattern*/
#endif
#else
return real.d != fabs(real.d);
#endif
--------
since you should know at compile time (through feature macros if nothing
else) what properties the implementation has, so there's no point in
compiling code that will never run.
dave

--
Dave Vandervies dj******@csclub.uwaterloo.ca

Surprise your compiler. Write better code than it asks you to.
--Keith Thompson in comp.lang.c
Apr 27 '07 #13
ar**********@googlemail.com wrote:
Hello.

I want to be able to portably determine whether or not a given double
value is negative.

Under C99, I do:

if (signbit(d)) negative = 1;

Or, if the implementation doesn't provide signbit(), I do:

union real {
unsigned long long n;
double d;
};

if ((real.n >63) & 1) negative = 1;

However, what if I am to support an implementation that only provides
C89 (no long long, no signbit())?

Anybody got a reliable, portable method of handling this?

thanks,
mc
signbit can't be written really efficiently and correctly in C.
Other languages fare much better:
.text
.globl _signbit
_signbit:
fldl 4(%esp) ; load double into FPU
fxam ; Examine it
fnstsw %ax ; Store status word
test $512,%ax; Test sign bit
setne %al ; set al to 1 if negative
andl $1,%eax ; clear other jits of eax
fstp %st(0) ; pop number from FPU
ret ; done
21 bytes code size, and an unmatched speed, just 8
machine instructions.

This is quite portable, since it will run under
Linux (x86) Solaris(x86) MacIntosh(x86) Windows
(all versions) Beos (x86) and MANY embedded
systems.
Apr 27 '07 #14
On Apr 27, 11:36 pm, dj3va...@caffeine.csclub.uwaterloo.ca (Dave
Vandervies) wrote:
You probably want
--------
if( CHAR_BIT==8
&& sizeof real.n == 8 /* =real.n is a 64-bit integer type*/
&& sizeof real.d == 8) /* =real.d is a 64-bit floating point type*/
--------
(Don't forget to #include <limits.hfor CHAR_BIT) or possibly just
--------
if(sizeof real.n == sizeof real.d)
--------
Yes, you're absolutely right. That's the second time I've made that
mistake.
I would write this as
--------
#if defined(HAVE_MATH_SIGNBIT)
return signbit(real.d);
#elif defined(HAVE_KNOWN_DOUBLE_FORMAT)
#ifdef HAVE_RIGHT_SIZE_INTEGER
return (real.n >63) & 1;
#else
/*Code to extract sign bit from double's bit pattern*/
#endif
#else
return real.d != fabs(real.d);
#endif
--------
since you should know at compile time (through feature macros if nothing
else) what properties the implementation has, so there's no point in
compiling code that will never run.

dave
Yes, I will make these adjustments. For now I will only support IEEE
754
doubles.

MC

Apr 27 '07 #15
ar**********@googlemail.com writes:
On Apr 27, 10:01 pm, dj3va...@caffeine.csclub.uwaterloo.ca (Dave
Vandervies) wrote:
>>
>Anybody got a reliable, portable method of handling this?

Why isn't "double_val<0", possibly combined with tests for magic values
like NaN that will or won't pass this test when they shoudn't or should,
reliable or portable enough?

(I am not a numerical analyst; there may be a valid reason why not.
But if you're asking C programmers who aren't numerical analysts how to
do this, you should be able to tell us why the obvious solution doesn't
meet your standards.)

The simple answer is that I need to be able to detect negative zero
(after doing all appropriate checks for NaN, inf, -inf etc.
I don't believe the C90 standard has any concept of negative zero,
NaN, or Inf. Assuming I'm correct on that point, there is no portable
way to distinguish between -0.0 and +0.0; an implementation is allowed
to treat them completely identically, apart from their different
representations. You're probably stuck with some non-portable
solution using a system-specific library.

Something that *might* work: if a value compares equal to 0.0 but has
a different representation than 0.0 (use memcmp), then it's *probably*
-0.0. But don't take my word for that.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Apr 28 '07 #16
ar**********@googlemail.com wrote:
>
On Apr 27, 9:53 pm, Flash Gordon <s...@flash-gordon.me.ukwrote:
Anybody got a reliable, portable method of handling this?
What is wrong with
if (d < 0)
?

It won't detect negative 0, but is that important to you?

Yes, unfortunately it is.
What does the standard say about this:

const double PositiveZero = 0.0;
const double NegativeZero = -0.0;

Are they guaranteed to be different?

(Yes, I know "positive zero" is an oxymoron, but then again, so is
"negative zero".)

--
+-------------------------+--------------------+-----------------------+
| Kenneth J. Brody | www.hvcomputer.com | #include |
| kenbrody/at\spamcop.net | www.fptech.com | <std_disclaimer.h|
+-------------------------+--------------------+-----------------------+
Don't e-mail me at: <mailto:Th*************@gmail.com>

Apr 28 '07 #17
jacob navia <ja***@jacob.remcomp.frwrites:
[...]
signbit can't be written really efficiently and correctly in C.
Other languages fare much better:
.text
.globl _signbit
_signbit:
fldl 4(%esp) ; load double into FPU
fxam ; Examine it
fnstsw %ax ; Store status word
test $512,%ax; Test sign bit
setne %al ; set al to 1 if negative
andl $1,%eax ; clear other jits of eax
fstp %st(0) ; pop number from FPU
ret ; done
21 bytes code size, and an unmatched speed, just 8
machine instructions.

This is quite portable, since it will run under
Linux (x86) Solaris(x86) MacIntosh(x86) Windows
(all versions) Beos (x86) and MANY embedded
systems.
Your definitiono "quite portable" is, to say the least, unusual.

It is, to say the most, nonsense.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Apr 28 '07 #18
dj******@caffeine.csclub.uwaterloo.ca (Dave Vandervies) writes:
[actual content snipped]
--
Dave Vandervies dj******@csclub.uwaterloo.ca

Surprise your compiler. Write better code than it asks you to.
--Keith Thompson in comp.lang.c
Love the sig quote!

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Apr 28 '07 #19
On Apr 28, 1:23 am, Kenneth Brody <kenbr...@spamcop.netwrote:
>
What does the standard say about this:

const double PositiveZero = 0.0;
const double NegativeZero = -0.0;

Are they guaranteed to be different?

(Yes, I know "positive zero" is an oxymoron, but then again, so is
"negative zero".)
It's hard to say really. I can't see anything in N1124 that says they
have to be different, but then it also speaks of IEEE 754, which says
that they do. I suppose this could mean that it *implies* it...

MC

Apr 28 '07 #20
On Apr 28, 1:23 am, Kenneth Brody <kenbr...@spamcop.netwrote:
What does the standard say about this:

const double PositiveZero = 0.0;
const double NegativeZero = -0.0;

Are they guaranteed to be different?

(Yes, I know "positive zero" is an oxymoron, but then again, so is
"negative zero".)
Er, as for C89, I don't know. I don't have a copy of the standard.

MC

Apr 28 '07 #21
ar**********@googlemail.com writes:
On Apr 28, 1:23 am, Kenneth Brody <kenbr...@spamcop.netwrote:
>>
What does the standard say about this:

const double PositiveZero = 0.0;
const double NegativeZero = -0.0;

Are they guaranteed to be different?

(Yes, I know "positive zero" is an oxymoron, but then again, so is
"negative zero".)

It's hard to say really. I can't see anything in N1124 that says they
have to be different, but then it also speaks of IEEE 754, which says
that they do. I suppose this could mean that it *implies* it...
N1124 (C99 plus corrigenda) speaks of IEEE 754, but it doesn't require
it. Conforming C implementations are possible on systems that use
other floating-point standards.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Apr 28 '07 #22
Keith Thompson said:
dj******@caffeine.csclub.uwaterloo.ca (Dave Vandervies) writes:
[actual content snipped]
>--
Dave Vandervies dj******@csclub.uwaterloo.ca

Surprise your compiler. Write better code than it asks you to.
--Keith Thompson in comp.lang.c

Love the sig quote!
DV's sigs are always worth checking out. Sorry, Dave, but I always
scroll to the bottom of your articles *first*...

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at the above domain, - www.
Apr 28 '07 #23
In article <V_******************************@bt.com>,
Richard Heathfield <rj*@see.sig.invalidwrote:
>Keith Thompson said:
>dj******@caffeine.csclub.uwaterloo.ca (Dave Vandervies) writes:
[actual content snipped]
>>--
Dave Vandervies dj******@csclub.uwaterloo.ca

Surprise your compiler. Write better code than it asks you to.
--Keith Thompson in comp.lang.c

Love the sig quote!

DV's sigs are always worth checking out.
Only if your sense of humour matches mine.
(And, of course, the better your sense of humour matches mine, the more
likely you are to make it into my sigs file, and therefore the more
likely you are to see your name there.)
Sorry, Dave, but I always
scroll to the bottom of your articles *first*...
Meh, whatever gets you to read them. (That assumes, of course, that
you DO eventually read the rest of them.)
dave

--
Dave Vandervies dj******@csclub.uwaterloo.ca

[A]nd no, I haven't implemented the Bayesian Sigmonster someone suggested.
--Anthony de Boer in the scary devil monastery
Apr 28 '07 #24
Keith Thompson wrote:
Your definitiono "quite portable" is, to say the least, unusual.

It is, to say the most, nonsense.
No. You do not even say that the list of OSes where that runs
is wrong...

:-)

The point I am trying to make is that the C library should NOT
be written in C.

jacob
Apr 28 '07 #25
jacob navia wrote:
Keith Thompson wrote:
Your definitiono "quite portable" is, to say the least, unusual.

It is, to say the most, nonsense.

No. You do not even say that the list of OSes where that runs
is wrong...
Well, I will. You say your x86 assembly code works on all versions of
Windows. Your assumption that all versions of Windows only work on x86
is wrong, and with that, so is your list.

That aside, it should be extremely obvious that x86 assembly cannot
work on a whole lot of sane systems that do accept standard C. It may
be reasonable to call x86 assembly "quite portable" in other places,
where both assumptions of the processor and the operating system are
the norm, but here, it's simply not.

Apr 28 '07 #26
jacob navia wrote:
Keith Thompson wrote:
>Your definitiono "quite portable" is, to say the least, unusual.

It is, to say the most, nonsense.

No. You do not even say that the list of OSes where that runs
is wrong...

The point I am trying to make is that the C library should NOT
be written in C.
You hid it very well.

--
<http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.txt>
<http://www.securityfocus.com/columnists/423>
<http://www.aaxnet.com/editor/edit043.html>
<http://kadaitcha.cx/vista/dogsbreakfast/index.html>
cbfalconer at maineline dot net
--
Posted via a free Usenet account from http://www.teranews.com

Apr 28 '07 #27
jacob navia <ja***@jacob.remcomp.frwrites:
Keith Thompson wrote:
>Your definitiono "quite portable" is, to say the least, unusual.
It is, to say the most, nonsense.

No. You do not even say that the list of OSes where that runs
is wrong...

:-)

The point I am trying to make is that the C library should NOT
be written in C.
You tell us the sky is green, but the point you're trying to make is
that it looks like rain and we should carry umbrellas.

Try saying what you actually mean.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Apr 28 '07 #28

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

Similar topics

17
by: John Bentley | last post by:
John Bentley: INTRO The phrase "decimal number" within a programming context is ambiguous. It could refer to the decimal datatype or the related but separate concept of a generic decimal number....
3
by: Weston C | last post by:
I'm coding up a small little script that's supposed to be used to display the number of hours until the US Financial markets open/close. Naturally, this involves getting the current time on the...
3
by: Ken Durden | last post by:
Is it possible to force positive values to have the + sign prefixed on them? double f1 = 1024.2; double f2 = -1024.2; string.Format( "{0:F}", f1 ); // +1024.2 string.Format( "{0:F}", f2 );...
5
by: MathNewbie | last post by:
Hi, I'm trying to do get my head around some, probably basic, math calculations. I checked some .net math libs, but the only thing I learn from studying those is humility ;-). Anyway, i have...
14
by: dascandy | last post by:
Hi, I was wondering, is it possible to determine whether a string can be modified (const char *) by the application or whether it's located in what's commonly .rodata? Regards, Peter
7
by: schaefer.mp | last post by:
To compute the absolute value of a negative base raised to a fractional exponent such as: z = (-3)^4.5 you can compute the real and imaginary parts and then convert to the polar form to get...
4
by: =?ISO-8859-1?Q?=22Martin_v=2E_L=F6wis=22?= | last post by:
In schema, several attributes have "special" values that start with a hash sign, e.g. #all (for final) and ##any, ##targetNamespace, ##local (for namespace). What is the rational for having the...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

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.