dev-cpp-users Mailing List for Dev-C++ (Page 2)
Open Source C & C++ IDE for Windows
Brought to you by:
claplace
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(15) |
Oct
(115) |
Nov
(154) |
Dec
(258) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(377) |
Feb
(260) |
Mar
(249) |
Apr
(188) |
May
(152) |
Jun
(150) |
Jul
(195) |
Aug
(202) |
Sep
(200) |
Oct
(286) |
Nov
(242) |
Dec
(165) |
2002 |
Jan
(245) |
Feb
(241) |
Mar
(239) |
Apr
(346) |
May
(406) |
Jun
(369) |
Jul
(418) |
Aug
(357) |
Sep
(362) |
Oct
(597) |
Nov
(455) |
Dec
(344) |
2003 |
Jan
(446) |
Feb
(397) |
Mar
(515) |
Apr
(524) |
May
(377) |
Jun
(387) |
Jul
(532) |
Aug
(364) |
Sep
(294) |
Oct
(352) |
Nov
(295) |
Dec
(327) |
2004 |
Jan
(416) |
Feb
(318) |
Mar
(324) |
Apr
(249) |
May
(259) |
Jun
(218) |
Jul
(212) |
Aug
(259) |
Sep
(158) |
Oct
(162) |
Nov
(214) |
Dec
(169) |
2005 |
Jan
(111) |
Feb
(165) |
Mar
(199) |
Apr
(147) |
May
(131) |
Jun
(163) |
Jul
(235) |
Aug
(136) |
Sep
(84) |
Oct
(88) |
Nov
(113) |
Dec
(100) |
2006 |
Jan
(85) |
Feb
(119) |
Mar
(33) |
Apr
(31) |
May
(56) |
Jun
(68) |
Jul
(18) |
Aug
(62) |
Sep
(33) |
Oct
(55) |
Nov
(19) |
Dec
(40) |
2007 |
Jan
(22) |
Feb
(49) |
Mar
(34) |
Apr
(51) |
May
(66) |
Jun
(43) |
Jul
(116) |
Aug
(57) |
Sep
(70) |
Oct
(69) |
Nov
(97) |
Dec
(86) |
2008 |
Jan
(32) |
Feb
(47) |
Mar
(106) |
Apr
(67) |
May
(28) |
Jun
(39) |
Jul
(31) |
Aug
(25) |
Sep
(18) |
Oct
(25) |
Nov
(5) |
Dec
(21) |
2009 |
Jan
(33) |
Feb
(27) |
Mar
(27) |
Apr
(22) |
May
(22) |
Jun
(10) |
Jul
(17) |
Aug
(9) |
Sep
(21) |
Oct
(13) |
Nov
(4) |
Dec
(11) |
2010 |
Jan
(10) |
Feb
(8) |
Mar
(4) |
Apr
(1) |
May
|
Jun
(2) |
Jul
|
Aug
(1) |
Sep
(8) |
Oct
(26) |
Nov
(9) |
Dec
(1) |
2011 |
Jan
(21) |
Feb
(16) |
Mar
(4) |
Apr
(19) |
May
(26) |
Jun
(9) |
Jul
(6) |
Aug
|
Sep
(4) |
Oct
(3) |
Nov
(2) |
Dec
(1) |
2012 |
Jan
(4) |
Feb
(7) |
Mar
(4) |
Apr
|
May
(1) |
Jun
(10) |
Jul
(1) |
Aug
(1) |
Sep
(18) |
Oct
(3) |
Nov
(1) |
Dec
(1) |
2013 |
Jan
(4) |
Feb
(2) |
Mar
(15) |
Apr
(6) |
May
(1) |
Jun
(3) |
Jul
(1) |
Aug
(2) |
Sep
(4) |
Oct
|
Nov
(9) |
Dec
|
2014 |
Jan
(4) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(5) |
Aug
(4) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
(4) |
2015 |
Jan
(2) |
Feb
(3) |
Mar
(1) |
Apr
(2) |
May
(1) |
Jun
(2) |
Jul
|
Aug
(1) |
Sep
(2) |
Oct
(9) |
Nov
(35) |
Dec
(6) |
2016 |
Jan
(7) |
Feb
(10) |
Mar
(10) |
Apr
(9) |
May
(13) |
Jun
(9) |
Jul
(1) |
Aug
(3) |
Sep
(3) |
Oct
(1) |
Nov
(1) |
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
(1) |
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
|
1
(11) |
2
(8) |
3
(2) |
4
(13) |
5
(8) |
6
(16) |
7
(11) |
8
(5) |
9
(9) |
10
(13) |
11
(20) |
12
(10) |
13
(14) |
14
|
15
(3) |
16
(14) |
17
(10) |
18
(11) |
19
(5) |
20
(8) |
21
(7) |
22
(4) |
23
(11) |
24
|
25
(2) |
26
(4) |
27
(1) |
28
(5) |
29
(11) |
30
(6) |
|
From: <mi...@ju...> - 2001-11-26 21:20:38
|
I am wondering the same thing, but I don't know how to use the dos.h functions. _________________________________________________________________________ ___ To: dev...@li... Date: Sun, 25 Nov 2001 14:23:12 -0300 (CLST) From: lv...@al... Subject: [Dev-C++] Re: Welcome to the "Dev-cpp-users" mailing list hello everyone: i want to known if is possible to use dos.h funtions like "delay" or "sound". thanx to anyone _________________________________________________________________________ ___ ________________________________________________________________ GET INTERNET ACCESS FROM JUNO! Juno offers FREE or PREMIUM Internet access for less! Join Juno today! For your FREE software, visit: http://dl.www.juno.com/get/web/. |
From: <lv...@al...> - 2001-11-26 17:29:22
|
hello everyone: i want to known if is possible to use dos.h funtions like "delay" or "sound". thanx to anyone |
From: Juliet <no...@li...> - 2001-11-25 18:27:26
|
At 10.47 25/11/2001 -0800, dx FX wrote: >Ive tried to use EnumWindows, but i did not get what I expected. I >expected to get the running applications on the desktop and the ones on >the system tray. But instead, I got more that 100+ windows that where >enumerated by the function. Maybe I must be more General but specific in >the problem. The taskbar enumerates only windows with the WS_EX_APPWINDOW and WS_VISIBLE styles. The title is the window's text (GetWindowTextLength - warning! some window classes return bogus values for this, always mask out the higher 16 bit - and GetWindowText). The icon is either the window's icon (WM_GETICON), the class's icon (GetClassLongEx), or a default icon of your choice |
From: dx F. <vin...@ed...> - 2001-11-25 02:37:13
|
ok! here I go again... Ive tried to use EnumWindows, but i did not get what I expected. I expected to get the running applications on the desktop and the ones on the system tray. But instead, I got more that 100+ windows that where enumerated by the function. Maybe I must be more General but specific in the problem. How do I create or code a program, that would detect, name, and switch between running applications just like windows explorer does(windows taskbar)? How do I create such an application? What functions will I use? Thanks to anyone __________________________________ www.edsamail.com |
From: Ioannis V. <no...@ya...> - 2001-11-23 22:18:46
|
Something interesting, i just got informed of a new C dialect made by AT&T, "Cyclone". <http://www.research.att.com/projects/cyclone/> http://www.research.att.com/projects/cyclone/ <http://www.wininformant.com/Articles/Index.cfm?ArticleID=23262> http://www.wininformant.com/Articles/Index.cfm?ArticleID=23262 Has anyone played with it? Ioannis * Ioannis Vranos * Programming pages: http://www.noicys.f2s.com <http://www.noicys.f2s.com/> * Alternative URL: http://run.to/noicys |
From: JM G. <mw...@mw...> - 2001-11-23 20:14:07
|
How do I access assembly routines in Dev-C++ ? |
From: Zack <ale...@ro...> - 2001-11-23 08:57:26
|
If you want some good tutorials try this url http://code.box.sk Has a lot of good tutorials, books, articles online and also zipped for = home. |
From: Ioannis V. <no...@ya...> - 2001-11-23 04:48:42
|
argv is an array of C-string pointers which has stored the arguments given in command line. argv[0] is the name of the program itself. argc is the number of argv elements and is at least 1 (the name of the executable). **argv is also *argv[]. The second is the more notationally correct (because argv is an array of c-strings). So here is some ANSI C++ 1998 code demonstrating this: =20 =20 #include <iostream> #include <cstdio> =20 int main(int argc, char *argv[]) { using namespace std; =20 cout<<"The total number of arguments including the filename of the program,\nargc: "<<argc<<endl; =20 cout<<"\nAnd now the arguments only:\n"; =20 for(int i=3D1; i<argc; i++) cout<<argv[i]<<" "; =20 cout<<endl; =20 getchar(); } =20 How i executed it: =20 C:\c>temp 1 test The total number of arguments including the filename of the program, argc: 3 =20 And now the arguments only: 1 test =20 =20 =20 Hope you got it. =20 =20 Ioannis =20 * Ioannis Vranos * Programming pages: http://www.noicys.f2s.com <http://www.noicys.f2s.com/>=20 * Alternative URL: http://run.to/noicys =20 =20 -----Original Message----- From: dev...@li... [mailto:dev...@li...] On Behalf Of Joh...@ao... Sent: Friday, November 23, 2001 3:47 AM To: dev...@li... Subject: [Dev-C++] (no subject) #include <iostream.h> #include <stdio.h> //QUESTION: Using what feature on the compiler to enter the 'argv'? void main(int argc, char** argv) { int a =3D 10; int b =3D a + argc; cout<<" b =3D a + argc: "<<b<<endl; int d =3D a + int(argv);// cout<<" d =3D a + argv: "<< d<<endl; getchar(); } //I enter the 'argc' through the input of 'Parameter' Button then hit //the 'Exection' to run the program. But I dont know how/where to enter the //'argv' through the command line..... Very appreciate your help..........=20 |
From: Sarah R. <ree...@ho...> - 2001-11-23 03:39:19
|
I have found a really good site for C++ tutorials. It is a web edition of an old book called Teach Yourself C++ in 21 days. It's link is at http://members.tripod.com/~firstpod/cpp21/index.htm. Over the 21 days it will teach you structures, streams, templates, quite a lot. I found it all compiles in Dev up to chapter 18, but I'm having some trouble with streams in 19. Hope this helps all you newbies. _________________________________________________________________ Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp |
From: Jason H. <jas...@bt...> - 2001-11-23 02:36:03
|
You appear to not understand what argc and argv are. They are a standard = part of a C/C++ program with a main() function and are linked together = in thier use. When you execute a program and follow it with various = parameters, i.e.: MyProg -a 20 -b MyFile.foo then the OS breaks the string down into each of the individual words = (seperated by spaces (usuualy)) and uses both argc and argv together to = make them accessible to the program. The first argc is pretty simple, it = gives you the number of arguments passed to your program including the = string representing the executable command. So in the above example argc = would be 5. Note it depends on the OS as to how the command is broken = down (AFAIK), but usualy spaces are it, possibly with commands enclosed = in qoutes treated as one command and kept whole. The second argv is a little more complex. I hope you are OK with = pointers, because we are dealing with a pointer, to a pointer, to a = string. Or if you prefer an array of pointers to strings. Basically you = have an array of values that point to all the command strings passed. = The OS doesn't convert numbers for you (as you seem to think) it just = passes everything as strings. The above command would translate into: "MyProg", "-a", "20", "-b", "MyFile.foo" If you wanted to display the name of the program then you could use: cout << argv[0]; or cout << *argv; The array version is used more often as it is easier to understand when = seen. The fifth argument could be displayed with: cout << argv[4]; Displaying: MyFile.foo Using this method the OS can allow any kinds of arguments to be passed = into a program without worrying about what is right or wrong. It leaves = it up to you, the programmer, to detect right and wrong. Here is a simple example (untested): // Add.exe #include <iostream> #include <cstdlib> #include <cctype> int main(int argc, char *argv[]) { // make sure enough args supplied if(argc !=3D 3) { cout << "Usage: " << argv[0] << " A B" << endl; cout << "Where A and B are integers" << endl; exit(1); } // make sure both values are integers char *pch; // first arg for(pch =3D argv[1]; pch; ++pch) { if(!isdigit(*pch)) { cout << "Values must be integers!" << endl; exit(2); } } // second arg for(pch =3D argv[2]; pch; ++pch) { if(!isdigit(*pch)) { cout << "Values must be integers!" << endl; exit(2); } } // add the numbers together and output cout << argv[1] << " + " << argv[2] << " =3D "; cout << atoi(argv[1]) + atoi(argv[2]) << endl; =20 return 0; // all ok } Try compiling that, correct any syntax or other errors I may have made, = and it should when executed from a dos prompt output the sum of the two = digits supplied. If you are a newbie then I don't expect you to understand all that I did = in that. I'm a bit lazy and didn't want to write it in a way that was = easier to read to someone not used to pointers etc... (I hope it works = now). I hope this helps, Jason. PS: when I say strings I was refering to the C style of null terminated = array of chars, and not the container class in C++. ----- Original Message -----=20 From: Joh...@ao...=20 To: dev...@li...=20 Sent: Friday, November 23, 2001 1:46 AM Subject: [Dev-C++] (no subject) #include <iostream.h> #include <stdio.h> //QUESTION: Using what feature on the compiler to enter the 'argv'? void main(int argc, char** argv) { int a =3D 10; int b =3D a + argc; cout<<" b =3D a + argc: "<<b<<endl; int d =3D a + int(argv);// cout<<" d =3D a + argv: "<< d<<endl; getchar(); } //I enter the 'argc' through the input of 'Parameter' Button then hit //the 'Exection' to run the program. But I dont know how/where to = enter the //'argv' through the command line..... Very appreciate your help..........=20 |
From: Christopher H. <the...@ho...> - 2001-11-23 02:04:20
|
REMOVE me PLEEEEEZ |
From: <Joh...@ao...> - 2001-11-23 01:48:18
|
#include <iostream.h> #include <stdio.h> //QUESTION: Using what feature on the compiler to enter the 'argv'? void main(int argc, char** argv) { int a = 10; int b = a + argc; cout<<" b = a + argc: "<<b<<endl; int d = a + int(argv);// cout<<" d = a + argv: "<< d<<endl; getchar(); } //I enter the 'argc' through the input of 'Parameter' Button then hit //the 'Exection' to run the program. But I dont know how/where to enter the //'argv' through the command line..... Very appreciate your help.......... |
From: General E. <mak...@vs...> - 2001-11-23 01:46:19
|
Hi, How can I use active X Controls in DEV C++. Is there any example program to demonstrate bout it?. Arvind Sidhaye |
From: General E. <mak...@vs...> - 2001-11-23 01:46:19
|
Hi, Is there any way to read contents of the page on web site. or to ready directory from FTP server. Arvind Sidhaye |
From: General E. <mak...@vs...> - 2001-11-23 01:46:18
|
Hi, I am trying to use DEV C++ 4.0. I have already build some API Routines for Visual FoxPro 5.0 using their construction Kit. Construction Kit Contains a header file "PRO_EXT.H". Link Library APIMSOBJ.LIB. To Compile these routines I used VC++6.0. This works fine. But when I tried the same program in DEV C++ 4.0 it returns many errors. Please help me. Arvind Sidhaye |
From: Exuss D. <dra...@ce...> - 2001-11-22 17:18:58
|
Hi! Does anyone knows tutorial on the WEB, or could me explain, how to use files in C++. In the books and tutorials information are only about text files, something like: ofstream myFile("file.txt"); myFile << "Some text"; But how to store/read structured data in files? In Turbo Pascal it looks like: { Creating a record } type human=record name:string; age:integer; end; var myFile:file of human; {file for storing records "human" type } person:human; person.name := "GreatName"; person.age := 100; assign(myFile, 'peoples.hhh'); rewrite(myFile); write(myFile, person); { and so on .. } How to do the same in C++ ?? Thanks! Exuss -- Nemokama el.pašto dėžutė - http://webmail.delfi.lt/ |
From: JS <jsc...@gm...> - 2001-11-22 13:52:12
|
Hi, is there a rule concering html in here ? some of the user's mails (html) do appear crippled here (does not happen with other html mails from other sources) html also appears to be vulnerable by viri - ??? |
From: Luigi S. <gi...@li...> - 2001-11-22 05:21:57
|
Here is another solution, based on what Mr. Graeme suggested. To build the binary file, untar the archive and type "make" from the command line. At 07.59 19/11/01 -0400, Mr. Peralta wrote: >... > >I'm happy to say that, given all of the advice i got, i was able to >solve the problem. > >... -- Luigi gi...@li... |
From: <mar...@ho...> - 2001-11-22 00:20:56
|
Hi, I'm Mario from Argentina and I wrote to you last Monday about a problem on Dev-C++. Here's what happened: 1) After I sent the mail to you, I realised that there was an update available (4.01). So I downloaded it and replaced the old DevCpp.exe for the new one... but the error persisted. 2) Then I took a look into my C++ program and try to understand why I got the compiler error while my friend (who also works with Dev-C++) didn't. And there they were: I placed two comments (or remarks if you like) starting with "//" BEFORE the inclusion of the libraries. 3) I cut'em and pasted'em UNDER "#include <iostream.h>" and "#include <stdlib.h>"... but the compiler error persisted. 4) Then I noticed that the cursor wasn't at the top-left corner of the editor, and I thought to myself: "It may be an edition problem". 5) So I pressed Ctrl+Home to re-position the cursor and clicked on the "Compile project" button... ALL WAS JUST FINE! NO ERRORS, AND MY EXE FILE WAS CREATED. So I came to a conclusion: - YOU CAN'T PUT ANY REMARKS BEFORE THE INCLUSION OF THE LIBRARIES. - YOU MUST POSITION THE CURSOR IN THE TOP-LEFT CORNER OF THE SCREEN BEFORE COMPILING. These considerations stand for Dev-Pascal as well. I hope you'll fix this in your next updates, 'cause Dev-C++ and Dev-Pascal RULE! Thanx. Mario G=F3mez. Student of Analytic Computing. mar...@ho... |
From: Kevin W. <ke...@me...> - 2001-11-21 22:33:22
|
cprintf is declared in conio.h for Win32 console programs (non-Ansi, non-Unix) Usually outputs direct to video memory. Unlike fprintf and printf, cprintf does not translate linefeed characters (\n) into carriage-return/linefeed character pairs (\r\n). Tab characters (specified by \t) are not expanded into spaces. (This information is from Borland help files.) Kev. ----- Original Message ----- From: <mi...@ju...> To: <dev...@li...> Sent: Tuesday, November 20, 2001 8:36 PM Subject: [Dev-C++] cout vs cprintf > What's the dif? I'm making a program in AP Computer Science and for some > reason we used cprintf in it. My "fantatstic" teacher never explained > why. What gives? Is it a holdover from C? |
From: Christopher H. <chr...@ho...> - 2001-11-21 19:50:36
|
please remove me from your mailing list - thank you |
From: Christoph P. <cp...@ip...> - 2001-11-21 15:43:37
|
Hi Ameer, I also had some problems with my desktop icons some time ago and repaired them with Tweak UI (http://www.microsoft.com/ntworkstation/downloads/PowerToys/Networking/NTTwe akUI.asp). Perhaps it works. Good luck! Christoph. -----Original Message----- From: dev...@li... [mailto:dev...@li...]On Behalf Of Ameer Khan Sent: Wednesday, November 21, 2001 8:52 AM To: dev...@li... Subject: [Dev-C++] Strange Icons Hi Friends, Sorry for an Out of topic enquiry. The icons on my desktop is behaving strangely. When the mouse pointer is brought near any of the icons on the desktop, the icon is skipping away from the pointer.We can move the icon to any part of the desktop by following the same with the mouse pointer. Is this due to any virus. I have scanned using Norton Antivirus updated one week ago. No problem in opening any of the programmes and I feel the system a bit slow. The strange behaviour is on the desktop only Can anybody help me in this case With regards Ameer khan sm...@vs... |
From: Ameer K. <sm...@vs...> - 2001-11-21 14:52:15
|
Hi Friends, Sorry for an Out of topic enquiry. The icons on my desktop is behaving strangely. When the mouse pointer is brought near any of the icons on the desktop, = the icon is skipping away from the pointer.We can move the icon to any = part of the desktop by following the same with the mouse pointer. Is this due to any virus. I have scanned using Norton Antivirus updated = one week ago. No problem in opening any of the programmes and I feel the system a bit = slow. The strange behaviour is on the desktop only Can anybody help me in this case With regards Ameer khan sm...@vs... |
From: Flavio de S. <fla...@se...> - 2001-11-21 05:10:32
|
I did it, but I had to do one more thing: change the main() function to the= =20 following. int STDCALL WinMain (HINSTANCE hInst, HINSTANCE hPrev, LPSTR lpCmd, int nShow) Then it worked well. Tks everybody that helped me. Flavio. At 09:44 19/11/01 +0100, you wrote: > > :\meus documentos\projetos\sistema de > > >e-mails\source\socketconnection\socket_test\socket_t2.o(.text+0xad):socket_= t >2.cpp: > > undefined reference to `WSAStartup@8' > >you need to add libwsock32.a to your projec. Go to Project->project >option->Load object files and select libwsock32.a from lib directory. >---------------------------------------------------------------------------= - >--- >If debugging is the process of removing bugs, >then programming must be the process of putting them in. >---------------------------------------------------------------------------= - >--- Flavio de Souza fla...@ne... ICQ:78458203 " Fazendo o que est=E1 ao nosso alcance, beneficiamos a todos. Tentando apenas ter id=E9ias para salvar o mundo, n=E3o ajudamos nem a n=F3s mesmos." |
From: Jason H. <jas...@bt...> - 2001-11-21 02:43:58
|
There are advantages and disadvantages to both. printf() is fast = flexible and usable in c. It has the advantage that the library for = <stdio.h> is smaller than the equivalent C++ <iostream> so in theory you = could make smaller apps with it. However in C++ you can create objects that have stream operators = associated with them, which allows for a cleaner interfaces most of the = time. Which makes it easier to output loads of data in an object, i.e = cout << MyObject; as opposed to printf("Var A: %d, Var B: %s, etc...", = MyObject.A, MyObject.B, etc...); In general printf has more in common with other languages such as = Pascal, and therefore the structured approach. In cout you don't need to = remember any %letter combinations, as the compiler handles it all for = you. You can use whatever suits your needs. In the end the output is directed at STDOUT (or something similar) for = both. As for cprintf, does it take the same form as standard printf? It may be = a dedicated version for a specific implementation, or it only works with = certain values. I know that standard C does supply a few other printf = functions i.e. vprintf (I think), but I've never really looked into = them. Jason. ----- Original Message -----=20 From: mi...@ju...=20 To: dev...@li...=20 Sent: Tuesday, November 20, 2001 8:36 PM Subject: [Dev-C++] cout vs cprintf What's the dif? I'm making a program in AP Computer Science and for = some reason we used cprintf in it. My "fantatstic" teacher never = explained why. What gives? Is it a holdover from C?=20 |