473,486 Members | 2,359 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

The curley bracket!

RedSon
5,000 Recognized Expert Expert
Where do you put it?

Like this
Expand|Select|Wrap|Line Numbers
  1. if (...){
  2. //blah blah
  3. }
  4.  
or like this
Expand|Select|Wrap|Line Numbers
  1. if(...)
  2. {
  3. //blah blah blah
  4. }
  5.  
Let the debate begin!!!
Feb 9 '07 #1
63 5893
MMcCarthy
14,534 Recognized Expert Moderator MVP
The second way of course. Never understood why anyone changed it. It's the only way (with indenting of course) that you can keep track of the opening and closing of brackets in nested statements. This was clearly a case of someone trying to change a standard that didn't need to be changed.

Mary
Feb 9 '07 #2
RedSon
5,000 Recognized Expert Expert
The first way saves a line of whitespace. And the closing bracket lines up with the command.

see?

Expand|Select|Wrap|Line Numbers
  1.    if {
  2.    }
  3.  
  4.    case {
  5.    }
  6.  
  7.    while {
  8.    }  
  9.  
I prefer to do it the second way myself. (just playing the devils advocate).
Feb 9 '07 #3
MMcCarthy
14,534 Recognized Expert Moderator MVP
If it were that easy there wouldn't be so many questions posted on this site that are solved by fixing the use of brackets.

Why is it so important to save a line of whitespace?
Feb 9 '07 #4
RedSon
5,000 Recognized Expert Expert
Because it saves on lines of code, makes it easier to print, and saves pain and agony on page-up and page-down buttons.
Feb 9 '07 #5
MMcCarthy
14,534 Recognized Expert Moderator MVP
Because it saves on lines of code, makes it easier to print, and saves pain and agony on page-up and page-down buttons.
This goes back to the IDE argument. Back in my day ... creak, creak ...
we coded on unix or dos and printed out on dot matrix printers. We didn't have these concerns.
Feb 9 '07 #6
AricC
1,892 Recognized Expert Top Contributor
In school we called the indenting a great way of showing variable scope. If prefer to indent keeps things readable!

Aric
Feb 10 '07 #7
AricC
1,892 Recognized Expert Top Contributor
Here is another debate what do you like:

intIndex++

Or

intIndex += 1

I prefer the +=

Aric
Feb 10 '07 #8
Killer42
8,435 Recognized Expert Expert
Doesn't this debate (or perhaps I should now say these debates) belong in a language-specific forum? My guess would be Java. As a (part-time, unofficial) VB developer, I don't have any great preference in the use of curly brackets.
Feb 10 '07 #9
MMcCarthy
14,534 Recognized Expert Moderator MVP
Doesn't this debate (or perhaps I should now say these debates) belong in a language-specific forum? My guess would be Java. As a (part-time, unofficial) VB developer, I don't have any great preference in the use of curly brackets.
These questions are cross language although they are C based as many of the languages are C based. It's not really a technical question in my opinion as it is actually a question of standardisation rather than syntax. The issue of standardisation is a developers discussion rather than a language specific one. I think this issue can extend to naming conventions, as in whether they are useful or not. Personally I find them very useful.

Mary
Feb 11 '07 #10
Banfa
9,065 Recognized Expert Moderator Expert
Where do you put it?

Like this
Expand|Select|Wrap|Line Numbers
  1. if (...){
  2. //blah blah
  3. }
  4.  
or like this
Expand|Select|Wrap|Line Numbers
  1. if(...)
  2. {
  3. //blah blah blah
  4. }
  5.  
Let the debate begin!!!
I prefer the second layout but have worked with both. What you use however is not so important as making sure the coding standard for the project in question specifies a layout and everyone on the project sticking to it.
Feb 11 '07 #11
Banfa
9,065 Recognized Expert Moderator Expert
Here is another debate what do you like:

intIndex++

Or

intIndex += 1

I prefer the +=

Aric
I don't think I care, but I use the ++ because it is 3 less characters to type.
Feb 11 '07 #12
acoder
16,027 Recognized Expert Moderator MVP
Here is another debate what do you like:

intIndex++

Or

intIndex += 1

I prefer the +=

Aric
intIndex++ wherever I can use it. CFScript (Coldfusion scripting language) doesn't allow these so I'm forced to use intIndex = intIndex + 1 (so much typing!)
Feb 12 '07 #13
acoder
16,027 Recognized Expert Moderator MVP
Where do you put it?

Like this
Expand|Select|Wrap|Line Numbers
  1. if (...){
  2. //blah blah
  3. }
  4.  
or like this
Expand|Select|Wrap|Line Numbers
  1. if(...)
  2. {
  3. //blah blah blah
  4. }
  5.  
Let the debate begin!!!
I actually use the first method. I've never had bracket problems because I use indenting too and all brackets line up with the command.

I don't know how I started using this method as opposed to the second method, but it's stuck and I actually find the second method unsightly. If I'm copying code from somewhere or altering code, I'll change it to the first style (if it's not a lot of code). To save even more space, I'll also get rid of brackets altogether if it's a single line of code in if, for, while, etc.

Just personal habits.
Feb 12 '07 #14
Ganon11
3,652 Recognized Expert Specialist
My style:

Expand|Select|Wrap|Line Numbers
  1. if (<condition>) singleStatement;
  2. if (<condition>) {
  3.    state1;
  4.    state2;
  5.    state3;
  6. } else if (<condition>) {
  7.    state1;
  8.    state2;
  9. } else singleStatement;
  10.  
  11. intIndex++;
I like saving the lines. Also, when scanning code, I can identify where each block of code begins/ends by the indenting involved. Finally,

Expand|Select|Wrap|Line Numbers
  1. }
  2. else if (<condition>)
  3. {
looks uglier and 'breaks up' the code more than

Expand|Select|Wrap|Line Numbers
  1. } else if (<condition>) {
++ is just great.
Feb 12 '07 #15
acoder
16,027 Recognized Expert Moderator MVP
My style:

Expand|Select|Wrap|Line Numbers
  1. if (<condition>) singleStatement;
  2. if (<condition>) {
  3.    state1;
  4.    state2;
  5.    state3;
  6. } else if (<condition>) {
  7.    state1;
  8.    state2;
  9. } else singleStatement;
  10.  
  11. intIndex++;
That's exactly how I code. Agree on the 'uglier' point too.
Feb 12 '07 #16
AricC
1,892 Recognized Expert Top Contributor
intIndex++ wherever I can use it. CFScript (Coldfusion scripting language) doesn't allow these so I'm forced to use intIndex = intIndex + 1 (so much typing!)
Wow! That has to heinous! Maybe that is why Cold Fusion isn't widely used anymore. Although, I don't know much about it :)
Feb 14 '07 #17
r035198x
13,262 MVP
I prefer

Expand|Select|Wrap|Line Numbers
  1.  if(condition) { 
  2. }
  3.  
  4.  
I like to see the closing brace close a construct rather than another brace. It is also easier to memorise which statement is on which line number if the braces are placed this way. This is also the prefered Java convention in the Java formatting conventions.
Feb 14 '07 #18
Banfa
9,065 Recognized Expert Moderator Expert
Expand|Select|Wrap|Line Numbers
  1. if (<condition>) singleStatement;
  2.  
Personally I think this is particularly bad and confusing, and breaks you rule of indenting show code level.

Most of the coding standard I have worked with specifically stipulate that you MUST ALWAYS use braces round a code block. This actually reduces maintenance work in the long run because of the slight tendancy towards people forgeting to add the braces if they add an extra statement to the code block.

As an aside I have worked with specification languages (TTCN specifically) where the indent level actually did give the code level, no braces or other syntax to indicate when a code block ended just code back out at the previous indentation level. Obviously putting in an extra TAB or leaving one out is quite easy but would cause horendous errors in the generated code.
Feb 14 '07 #19
Ganon11
3,652 Recognized Expert Specialist
As an aside I have worked with specification languages (TTCN specifically) where the indent level actually did give the code level, no braces or other syntax to indicate when a code block ended just code back out at the previous indentation level. Obviously putting in an extra TAB or leaving one out is quite easy but would cause horrendous errors in the generated code.
I don't know about you, but that seems like a terrible idea. Although it would force any programmers to learn proper indenting techniques, it would be a killer learning curve.
Feb 14 '07 #20
Banfa
9,065 Recognized Expert Moderator Expert
I don't know about you, but that seems like a terrible idea. Although it would force any programmers to learn proper indenting techniques, it would be a killer learning curve.
It was a complete nightmare, the code was shipped to us written by a 3rd party and then we used another 3rd party compiler to compile the TTCN into compilable C.

The TTCN source was full of bugs and the 3rd party compiler was full of bugs. getting a working system was a lot of hardwork everytime they produce a new version of either.
Feb 14 '07 #21
Motoma
3,237 Recognized Expert Specialist
My style:

Expand|Select|Wrap|Line Numbers
  1. if (<condition>) singleStatement;
  2. if (<condition>)
  3. {
  4.    state1;
  5.    state2;
  6.    state3;
  7. }
  8. else if (<condition>)
  9. {
  10.    state1;
  11.    state2;
  12. }
  13. else
  14.    singleStatement;
  15.  
  16. intIndex++;
I use the second method, and here's why:
As part of my last job, I would assist one of my professors in teaching his students PHP. A very common error among students was leaving brackets open. The easiest way for my to have them search for it was through the "counting method." You simply work your way down the page, at a certain scope (determined by the intent), counting up for every { you hit and counting down for every } you hit. If you ever go negative, or enter a higher scope when you aren't at 0, you have an error.
Teaching this got me in the habit of coding this way (however, I am starting to get lazy :P)
Feb 14 '07 #22
sicarie
4,677 Recognized Expert Moderator Specialist
I use the second method, and here's why:
As part of my last job, I would assist one of my professors in teaching his students PHP. A very common error among students was leaving brackets open. The easiest way for my to have them search for it was through the "counting method." You simply work your way down the page, at a certain scope (determined by the intent), counting up for every { you hit and counting down for every } you hit. If you ever go negative, or enter a higher scope when you aren't at 0, you have an error.
Teaching this got me in the habit of coding this way (however, I am starting to get lazy :P)
I used the first method until I got stuck in a grad-level Java coding course last semester of my senior year (I'm still mad at my advisor for that), and the teacher there used the second. I tend to be pretty OCD when it comes to how my code looks, and I had to conform to his standard because of all the libraries he gave us that we had to modify and add to. After doing nothing but coding like that for 3 months, I was unable to break the habit.

(I also put all my single statement conditionals in curly braces, just in case I have to go back later and change them)
Feb 16 '07 #23
Motoma
3,237 Recognized Expert Specialist
(I also put all my single statement conditionals in curly braces, just in case I have to go back later and change them)
I usually keep single statements on the same line as their conditions, unlike the else statement in my previous post.

The other reason I like the first is because putting a { on it's own line makes things look empty. When there is space just sitting there after a condition, there is no reason not to fill it with a cursory description of the condition you are in:

Expand|Select|Wrap|Line Numbers
  1. if(something == happened())
  2. { // Must comment on condition, otherwise I will look empty!
  3.   docrap();
  4.   twiddle.fingers();
  5.   crash();
  6. }
  7.  
Feb 16 '07 #24
sicarie
4,677 Recognized Expert Moderator Specialist
The other reason I like the first is because putting a { on it's own line makes things look empty. When there is space just sitting there after a condition, there is no reason not to fill it with a cursory description of the condition you are in:

Expand|Select|Wrap|Line Numbers
  1. if(something == happened())
  2. { // Must comment on condition, otherwise I will look empty!
  3.   docrap();
  4.   twiddle.fingers();
  5.   crash();
  6. }
  7.  
Ah, my comments on condition usually come immediately above, and then I comment at the end what the result is:

Expand|Select|Wrap|Line Numbers
  1. // here I check to see if something happened
  2. if (something == happened) {
  3.     twiddle.fingers();         // I steal code too, by the way ;)
  4. } // and comment here where twiddle.fingers() might be necessary/have to be checked
  5.  
Feb 16 '07 #25
Ganon11
3,652 Recognized Expert Specialist
Expand|Select|Wrap|Line Numbers
  1. // here I check to see if something happened
  2. if (something == happened) {
  3.     twiddle.fingers();         // I steal code too, by the way ;)
  4. } // and comment here where twiddle.fingers() might be necessary/have to be checked
  5.  
Comments? Documentation! Pfft! Preposterous.

>.>
Feb 16 '07 #26
Motoma
3,237 Recognized Expert Specialist
Ah, my comments on condition usually come immediately above, and then I comment at the end what the result is:

Expand|Select|Wrap|Line Numbers
  1. // here I check to see if something happened
  2. if (something == happened) {
  3.     twiddle.fingers();         // I steal code too, by the way ;)
  4. } // and comment here where twiddle.fingers() might be necessary/have to be checked
  5.  
This seems like it could get confusing with multiple conditions with else ifs:
Expand|Select|Wrap|Line Numbers
  1. // here I check to see if something happened
  2. if (something == happened) {
  3.     twiddle.fingers();          // Verbose comment that probably runs off the screen or causes a word-wrap.
  4. } // Is this a comment about twiddle.fingers() or then next condition?
  5. else if (something.else == happened) {
  6.     dance.wildly();                  // Comment which is not properly aligned with the above comment, causing me to cry like a sissy.
  7. } // I just love to dance.
  8.  
Working from my laptop, I often curse when people put comments at the end of lines of code...Verbosity is desired; however, scrolling and word-wrapping are not! Comments MUST all have similar indentation!!

Expand|Select|Wrap|Line Numbers
  1. if (something == happened)
  2. { // Oh Em Ef Gee, something happened.
  3.     twiddle.fingers();
  4. } // Really dodged a bullet there!
  5. else if (something.else == happened)
  6. { // I have no idea what is going on
  7.     dance.wildly();
  8. } // Beats the crap out of walking in random patterns
  9.  
Feb 16 '07 #27
sicarie
4,677 Recognized Expert Moderator Specialist
This seems like it could get confusing with multiple conditions with else ifs:
Expand|Select|Wrap|Line Numbers
  1. // here I check to see if something happened
  2. if (something == happened) {
  3.     twiddle.fingers();          // Verbose comment that probably runs off the screen or causes a word-wrap.
  4. } // Is this a comment about twiddle.fingers() or then next condition?
  5. else if (something.else == happened) {
  6.     dance.wildly();                  // Comment which is not properly aligned with the above comment, causing me to cry like a sissy.
  7. } // I just love to dance.
  8.  
Working from my laptop, I often curse when people put comments at the end of lines of code...Verbosity is desired; however, scrolling and word-wrapping are not! Comments MUST all have similar indentation!!

Expand|Select|Wrap|Line Numbers
  1. if (something == happened)
  2. { // Oh Em Ef Gee, something happened.
  3.     twiddle.fingers();
  4. } // Really dodged a bullet there!
  5. else if (something.else == happened)
  6. { // I have no idea what is going on
  7.     dance.wildly();
  8. } // Beats the crap out of walking in random patterns
  9.  
Expand|Select|Wrap|Line Numbers
  1. // here I check to see if something happened
  2. if (something == happened) {
  3.     // would usually comment here on twiddle.fingers() if necessary...
  4.     twiddle.fingers();          // definitely didn't think this one through in the heat of the moment (and trying to get you to cry again for pointing it out)
  5. } // Is this a comment about twiddle.fingers() or then next condition?
  6.  
I'm very liberal with my comments, and feel no remorse about putting a comment line in between spaces
Expand|Select|Wrap|Line Numbers
  1. /* this would have to be a pretty weird function to require comments before,
  2.    during, and after the function executes */
  3. if (something == happened) {
  4.     // this is where I would usually put the comment
  5.     twiddle.fingers();
  6. } // say twiddle.fingers() doesn't need to be set below, or another test does
  7. // then comment on else-if (if necessary)
  8. else if (something == didnt_happen) {
  9.     make.somethingHappen();
  10. } // so twiddle now needs to be set
  11.  
Feb 16 '07 #28
sicarie
4,677 Recognized Expert Moderator Specialist
Yeah, yours definitely looks cleaner.

/me ponders going off on discussion about code obfuscation and how it relates to job security....
Feb 16 '07 #29
enreil
86 New Member
I just have to chime in my support of the second method. Aesthetics aside, that makes it much easier to logically segment my code with a quick glance. The first way, though cleaner, I find takes a bit more time to decipher.

Also, I have to support the ++ way.
Feb 16 '07 #30
Motoma
3,237 Recognized Expert Specialist
Yeah, yours definitely looks cleaner.

/me ponders going off on discussion about code obfuscation and how it relates to job security....
Someone beat you to it.
Feb 16 '07 #31
sicarie
4,677 Recognized Expert Moderator Specialist
Someone beat you to it.
That's going in my bookmarks, right next to The Daily WTF.
Feb 16 '07 #32
tolkienarda
316 Contributor
ok i use the right method of currly braces and comments

Expand|Select|Wrap|Line Numbers
  1. if($somthin = 'somthing')
  2. {
  3.     with indented code here;//short same line comments
  4.    $i++;//easy add and standard counter
  5. /*
  6. with big jolly multi line comments here about the following code and about the program in general and maybe even some credits as to who helped me write it or if i am posting the script for people to use i put my name on it
  7. now the reason i do this with proper indention being important is because python dosen't even use the curly braces just indentation and right now i don't know python but sometime when i am not working and doing classes every night i will lean it, and this summer my friend can teach me some
  8. */
  9. }
  10.  
the reason i do that is because of the coolest teacher at my high school was sick or figuring out what everyone's code does so she made us comment and indent that way also if we coppied other peoples code she knew we at least understood it cause we had to comment them.

now if you have looked at my code in the posts you can see i have gotten lazy but this is the methodology i belive in.

eirc
Feb 17 '07 #33
r035198x
13,262 MVP
Someone beat you to it.
That's a great link
Feb 17 '07 #34
AricC
1,892 Recognized Expert Top Contributor
That's going in my bookmarks, right next to The Daily WTF.
Great link! A good way to lose your job or get stuck supporting some POS
Feb 17 '07 #35
tsgomez
12 New Member
Using only i++ can get you in trouble. Due to compiler differences, the i might be incremented at a different time than you intend.

post and pre...in C++ it's normally thought that you apply the incremention in relation to the index in the order that you see it.

For instance:
Expand|Select|Wrap|Line Numbers
  1. int index = 0;
  2. test[index] = temp[index++];
  3.  
Some compilers will assign the value of temp at index 1 to test index 0. Upon completion, the variable index would still be 0.

Other compilers, especially olders ones, will assign the value of temp at index 1 to test index 0, BUT, on completion, the value of the variable index would be 1 (due to the index++). In these cases, you would have to re-write the code as follows:

Expand|Select|Wrap|Line Numbers
  1. int index = 0;
  2. test[index] = temp[++index]
  3.  
There's an article about this on the Web somewhere, sorry i don't have the link at the moment.


Using index+=1 is easy, but it's not as clear. From a readability standpoint, using index = index+1 is best.


Note: I personally use index+=1
Feb 28 '07 #36
Killer42
8,435 Recognized Expert Expert
So effectively, the language should be referred to as C+=1
:-)
Feb 28 '07 #37
Motoma
3,237 Recognized Expert Specialist
So effectively, the language should be referred to as C+=1
:-)
Depends on the implementation of operator++ and the typeof(C);
Mar 1 '07 #38
r035198x
13,262 MVP
So effectively, the language should be referred to as C+=1
:-)
Actually as C = C + 1;
Mar 1 '07 #39
Tuanisviet
37 New Member
I prefer the way of

if(...)
{
//blah blah blah
}


I'd rather sacrifice a few lines of white space for neatly packaged methods & if statements & the ability to find them easily.


speaking of i++ & index++... anyone heard of ii instead of i++?
Mar 3 '07 #40
DeMan
1,806 Top Contributor
I would imagine that could majorly confuse things (especially given some old naming conventions)
Mar 4 '07 #41
stroken
24 New Member
Here is another debate what do you like:

intIndex++

Or

intIndex += 1

I prefer the +=

Aric
You should use the prefix-version, ++intIndex. It is faster.
Mar 4 '07 #42
stroken
24 New Member
You should use the prefix-version, ++intIndex. It is faster.
Perhaps I should explain why:

Postfix ++ (i++) needs to copy the object first, then increment the original, then return the copy. You get the overhead of a copy of the object.

Prefix ++ (++i) just needs to increment the object and then return a reference to it. No copy is needed.
Mar 4 '07 #43
AnthonyScaife
8 New Member
I prefer:

Expand|Select|Wrap|Line Numbers
  1. if (databaseGotUpdated)
  2. {   updateCount++;
  3.     clearDisplay();
  4.     renderNewTable();
  5. }
  6.  
I like:
- The style of indentation
- camelHumpStyle names rather than with_under_scores
- ++
- Functions in the style verbAdjectiveNoun() in plain English

What does everyone else think ? ( "what a pedant !" ? )
Mar 8 '07 #44
AricC
1,892 Recognized Expert Top Contributor
You should use the prefix-version, ++intIndex. It is faster.
With the speeds of PC processing these days I wouldn't think this is a big factor. Do you any have proof?
Mar 8 '07 #45
Banfa
9,065 Recognized Expert Moderator Expert
With the speeds of PC processing these days I wouldn't think this is a big factor. Do you any have proof?
I suspect that it isn't faster at all once the optimiser has got it's hands on it.
Mar 8 '07 #46
Killer42
8,435 Recognized Expert Expert
With the speeds of PC processing these days I wouldn't think this is a big factor.
Argh! Evil !!

This sort of "who cares, PCs are fast these day" reasoning is responsible for a lot of stupid coding and user frustration.

You don't happen to work for MS, by any chance?
Mar 8 '07 #47
Ganon11
3,652 Recognized Expert Specialist
I prefer:

Expand|Select|Wrap|Line Numbers
  1. if (databaseGotUpdated)
  2. {   updateCount++;
  3.     clearDisplay();
  4.     renderNewTable();
  5. }
  6.  
I like:
- The style of indentation
- camelHumpStyle names rather than with_under_scores
- ++
- Functions in the style verbAdjectiveNoun() in plain English

What does everyone else think ? ( "what a pedant !" ? )
Not sure I like including code on the same line as the opening bracket, but otherwise we agree.
Mar 8 '07 #48
AricC
1,892 Recognized Expert Top Contributor
Argh! Evil !!

This sort of "who cares, PCs are fast these day" reasoning is responsible for a lot of stupid coding and user frustration.

You don't happen to work for MS, by any chance?
No I don't work for MS but tell me how ++ is that much faster than +=?
Mar 8 '07 #49
Banfa
9,065 Recognized Expert Moderator Expert
This sort of "who cares, PCs are fast these day" reasoning is responsible for a lot of stupid coding and user frustration.
Actually this is a very good point, I once had to spend 2 weeks going through the code of an embedded project with 16Mbyte RAM searching for ways to save memory because people with this sloppy style had used it all up and the project need space for development.
Mar 8 '07 #50

Sign in to post your reply or Sign up for a free account.

Similar topics

1
2333
by: Stefan Gangefors | last post by:
I'm trying to figure out what I'm doing wrong when using ereg(). This is my regexp: ereg("^]$", "]"); and that does'n work, but this does: ereg("^$", "[");
8
6818
by: Ken in Melbourne Australia | last post by:
If I use the curly bracket syntax (referred to as the complex syntax) within a string, how do I get to call a function within it? The php manual says that the first (or previous) character for...
3
4359
by: Robert Mark Bram | last post by:
Howdy All! Is there any difference between referencing objects and attributes with dot notation or bracket notation? Example, document.formname.controlname document Can I access...
1
2179
by: AMDRIT | last post by:
Hello all, I am trying my hand at RegEx and came across a tangent; curley braces upset string.format expressions. Is there a way to escape them with out making them an argument? strTemp =...
102
5566
by: Skybuck Flying | last post by:
Sometime ago on the comp.lang.c, I saw a teacher's post asking why C compilers produce so many error messages as soon as a closing bracket is missing. The response was simply because the compiler...
2
1272
by: Robert Hanson | last post by:
Hi All, I noticed that when I place the ending bracket on a function, the enclosed statements will bold for a short period of time. Is there a way to get that to occur again after you have...
3
1484
by: dink | last post by:
helo, I'm new to VS 7.1, searched thru help but no luck. Anyone can tell me a keyboard shortcut to go to the ending bracket when cursor is under opening bracket and vice-versa. I think there...
3
2075
by: scunnybunny | last post by:
What I am trying to do is get the program to look along the array and if the first letter is ‘T’ and the last letter ‘M’ (10P7-TXL/) on the highlighted piece of tax code. #write tax bracket 1 ...
11
2365
by: -Lost | last post by:
I was perusing some code and saw: var theForm = document.forms; if (!theForm) { theForm = document.aspnetForm; } Is this a waste of code? Or is there some instance where bracket notation...
1
5681
by: prodziedzic | last post by:
I want use scanf to read from input everything till right square bracket ']'. It seems to be something like that: scanf("%]) but that's not working. Any ideas?
0
7099
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,...
0
7175
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...
0
7319
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...
0
5430
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
1
4864
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
4559
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...
0
3069
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
1378
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 ...
0
262
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...

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.