INSTALACJA CONIO2.h PLUS OPIS WSZYSTKICH FUNKCJI Z PRZYKŁADAMI
Chciałbym tutaj napisać o instalcji conio2.h w Code::Blocks, jeśli ktoś używa Dev C++ http://www.dobreprogramy.pl/DevC,Program,Windows,28400.html stary Dev doczekał się w końcu kontynuacji po wielu latach przerwy, to może użyć Devpacka conio, no ale w wypadku Code::Blocks’a to są dwa rozwiązania - w Code::Blocks w czasie instalacji programu możemy doinstalować wtyczkę umożliwiającą instalację Devpacków (którą potem możemy znaleźć pod menu Plugins Devpack updater/installer lub zainstalować Conio.h ręcznie. Oto ta druga metoda w sumie też prosta.
Instalacja Conio.h w programie Code::Blocks
-
Ściągamy Devpacka conio-2.0-1mol.DevPak z http://sourceforge.net/projects/conio/files/devpak/CONIO%202.0/
-
ZMIENIAMY DEVPAKA NA PLIK ZIP conio-2.0-1mol.zip i następnie rozpakowujemy, otrzymamy 4 fodery,
-
Zawartość folderu include (nie cały folder tylko pliki) (conio2.h i plik constream) kopiujemy do miejsca instalacji Code Blocks znajdź folder MinGW, następnie do folderu include skopiuj plik conio2.h i plik constream,
4.Następnie zawartość folderu lib (libconio i libconio_unicode) kopiujemy do folderu lib znajdującego się w folderze MinGW.
5.Uruchomiamy Code Block, w menu Settings** Compile… **** Global Compile Settings **** Linker settings **** Add** (dodajemy nasze conio - C:\Program Files\CodeBlocks\MinGW\include\conio.h i znów Add C:\Program Files\CodeBlocks\MinGW\include\conio2.h W opcjach z boku Other linker options wpisujemy -lconio wciskamy OK
Teraz w naszych projektach możemy używać plików nagłówkowych conio.h i conio2.h :o :o
– Dodane 23.07.2012 (Pn) 23:29 –
Będę tutaj stopniowo dodawał kolejne funkcję z biblioteki niestandardowej conio, która zawiera przydatne funkcje obsługi ekranu i klawiatury w standardzie ANSII C pod konsolą w Windows. Mam nadzieje że komuś się przyda, chociaż większość programistów zachwyca się wodotryskami graficznymi a zapomina o czystym programowaniu, które wywodzi się z trybu konsolowego (tekstowego), chociaż może się mylę i może coś pomyliłem. Dodam że przykłady były testowane w Code::Block’u 10.5 Build May 27 2010 etc (windows unicode 32 bit) Ustawienia do conio jak wyżej, ponadto kodowanie tekstu w menu programu Settings Editor pod Encoding use encoding when opening files - wybierz Windows 1250 (chodzi żeby były polskie litery podczas pisania programów) zaznacz następnie opcje As default encoding (bypassing…, a potem naciśnij OK.
JEŚLI PO URUCHOMIENIU LISTINGÓW PROGRAMÓW NIE WIDZISZ POLSKICH LITER W KONSOLI PATRZ TEN WĄTEK http://forum.dobreprogramy.pl/kompilacja-polskie-znaki-konsoli-t304295-15.html
FUNKCJA void gotoxy (int x, int y) USTAWIA KURSOR NA EKRANIE W WYBRANEJ POZYCJI
#include
#include
using namespace std;
int main()
{
gotoxy(20,20);/*void gotoxy (int x, int y) funkcja
ustawia kursor w wybranej pozycji na ekranie
konsoli, x - to położenie poziome, y - pionowe*/
cin.get();//program czeka na wciśnięcie klawisza enter
cin.get();//dzięki temu widzimy rezultat naszego programu nim zniknie
return 0;
}
– Dodane 24.07.2012 (Wt) 20:42 – FUNKCJA void cputsxy (int x, int y, char * str )WYŚWIETLA TEKST NA EKRANIE W WYBRANEJ POZYCJI
#include
#include
using namespace std;
int main()
{
cputsxy (10,10,"Witamy w Conio");/*funkcja cputxy wyświetla łańcuch znakowy - tekst
w określonej pozycji na ekranie, cputsxy (int x, int y, char * str ), x - to położenie
poziome, y - pionowe, natomiast char* str - to łańcuch znakowy ujęty w cudzysłowy*/
cin.get();//program czeka na wciśnięcie klawisza enter
cin.get();
return 0;
}
– Dodane 24.07.2012 (Wt) 22:33 – FUNKCJA void textcolor ( int color ) USTAWIA KOLOR WYŚWIETLANEGO TEKSTU
#include
#include
using namespace std;
int main()
{
textcolor(LIGHTBLUE);/*funkcja textcolor (int color) ustawia kolor wyświetlanego
tekstu.*/
//oto dostępne kolory
/*
BLACK kolor czarny
BLUE kolor niebieski
GREEN kolor zielony
CYAN kolor niebieskozielony
RED kolor czerwony
MAGENTA kolor fuksji (różowy)
BROWN kolor brązowy
LIGHTGRAY kolor jasnoszary
DARKGRAY kolor ciemnoszary
LIGHTBLUE kolor jasnoniebieski
LIGHTGREEN kolor jasnozielony
LIGHTCYAN kolor jasno niebieskozielony
LIGHTRED kolor jasnoczerwony
LIGHTMAGENTA kolor jasny fuksji (jasnoróżowy)
YELLOW kolor żółty
WHITE kolor biały
*/
cputsxy (10,10,"Witamy w Conio");
cin.get();//program czeka na wciśnięcie klawisza enter
cin.get();
return 0;
}
– Dodane 24.07.2012 (Wt) 23:07 – FUNKCJA void textbackground ( int color ) USTAWIA KOLOR TŁA WYŚWIETLANEGO TEKSTU
#include
#include
using namespace std;
int main()
{
textcolor(LIGHTMAGENTA);
textbackground (WHITE);/*funkcja textbackground ( int color ) ustawia kolor tła
wyświetlanego tekstu - dostępne kolory jak w funkcji textcolor */
cputsxy (10,10,"Witamy w Conio");
cin.get();//program czeka na wciśnięcie klawisza enter
cin.get();
return 0;
}
– Dodane 24.07.2012 (Wt) 23:31 – PROGRAM WITAMY W CONIO - BIBLIOTECE NIESTANDARDOWEJ
#include
#include
#include
using namespace std;
int main()
{
textcolor(LIGHTGREEN);
cputsxy (11,10,"W");
Sleep (1000);
cputsxy (12,10,"I");
Sleep (1000);
cputsxy (13,10,"T");
Sleep (1000);
cputsxy (14,10,"A");
Sleep (1000);
cputsxy (15,10,"M");
Sleep (1000);
cputsxy (16,10,"Y");
Sleep (1000);
cputsxy (17,10," ");
Sleep (1000);
cputsxy (18,10,"W");
Sleep (1000);
cputsxy (20,10,"CONIO");
Sleep (1000);
textcolor(GREEN);
cputsxy (11,12,"w bibliotece niestandardowej");
cin.get();//program czeka na wciśnięcie klawisza enter
cin.get();
return 0;
}
– Dodane 26.07.2012 (Cz) 9:12 – FUNKCJA void delline (void) USUWA LINIĘ NA KTÓREJ ZNAJDUJE SIĘ KURSOR
#include
#include
#include
using namespace std;
int main()
{
cout "to jest tekst";
Sleep (2000);
delline();/*Funkcja void delline (void) usuwa linię
na której znajduje się kursor*/
cin.get();
cin.get();
return 0;
}
– Dodane 26.07.2012 (Cz) 9:18 – FUNKCJA void insline (void) WSTAWIA LINIĘ NA KTÓREJ ZNAJDUJE SIĘ KURSOR W tym wypadku kursor wyświetla się tuż za tekstem, więc pusta linia zostanie wstawiona w miejsce wyświetlanego tekstu, a sam tekst przesunięty o jedną linię w dół.
#include
#include
#include
using namespace std;
int main()
{
cout "To jest tekst";
Sleep (2000);
insline();//
cin.get();
cin.get();
return 0;
}
– Dodane 26.07.2012 (Cz) 21:58 – FUNKCJA void putchxy (int x,int y, char ch) WSTAWIA ZNAK (char) W PODANEJ POZYCJI NA EKRANIE
#include
#include
using namespace std;
int main()
{
putchxy (10,10,66);/*Funkcja void putchxy (int x,int y, char ch)
wstawia znak - znakowy typ danych (char) w wyznaczonej pozycji na
ekranie - x -położenie poziome, y - pionowe*/
// w tym wypadku 66 odpowiada znakowi B według tabeli ASCII
cin.get();
cin.get();
return 0;
}
TABELA ASCII - American Standard Code for Information Interchange http://pl.wikipedia.org/wiki/ASCII– Dodane 26.07.2012 (Cz) 22:09 – FUNKCJA void putchxy (int x,int y, char ch) BEZ TABELI ASCII
#include
#include
using namespace std;
int main()
{
//Deklaracja zmiennych
int x = 2;// zmienna x typu int ma przypisaną wartość 2
int y = 3;// zmienna y typu int ma przypisaną wartość 3
char b = 'D';//zmiena b typu char ma przypisaną literę D
//Wywołanie funkcji putchxy ze zmiennymi które zostały określone wyżej
putchxy (x,y,b);
cin.get();
cin.get();
return 0;
}
– Dodane 26.07.2012 (Cz) 22:32 – EFEKT Z MATRIXA SPADAJĄCYCH ZIELONYCH CYFR
#include
#include
#include
#include
#include
using namespace std;
int main(int argc, char *argv[] )
{
int a;
string array [42] = {"0","1","2","3","4","5","6","7","8","9","0","1","2","3","4","5","6","7","8","9","0","1","2","3","4","1","2","3","4","5","6","7","8","9"," "," "," ","?","!","#"};
system("color 0A");
while(1)
{
Sleep(10);
for(int i=0; i400; i++)
{
a=rand()%42;
cout" "
cout" ";
}
cout
}
getch();
return(0);
}
– Dodane 27.07.2012 (Pt) 23:46 – KOLEJNY PROGRAM W STYLU MATRIX
#include
#include
#include
using namespace std;
int main()
{
textcolor (LIGHTGREEN);//ustawia kolor tekstu
//Deklaracja zmiennych
char b = 'W';//zmiena b typu char ma przypisaną literę D
char c = 'I';
char d = 'T';
char e = 'A';
char f = 'J';
//Wywołanie funkcji putchxy ze zmiennymi które zostały określone wyżej
putchxy (5,5,b);
Sleep (500);
putchxy (6,5,c);
Sleep (500);
putchxy (7,5,d);
Sleep (500);
putchxy (8,5,e);
Sleep (500);
putchxy (9,5,f);
Sleep (500);
cputsxy (10,5," NEO");
Sleep (1000);
cputsxy (5,6,"TUTAJ MORFEUSZ");
char m = '.';
putchxy (20,6,m);
Sleep (300);
putchxy (21,6,m);
Sleep (300);
putchxy (22,6,m);
Sleep (300);
putchxy (23,6,m);
Sleep (300);
putchxy (24,6,m);
Sleep (300);
putchxy (25,6,m);
Sleep (300);
putchxy (26,6,m);
Sleep (300);
putchxy (27,6,m);
Sleep (1000);
cputsxy (28,6,"TO");
Sleep (1000);
cputsxy (30,6," CZEGO");
Sleep (1000);
cputsxy (36,6," SZUKASZ JEST TUTAJ");
Sleep (1000);
cputsxy (5,7,"CZY WIESZ CO TO JEST?");
char n = 'M';
putchxy (5,8,n);
Sleep (2000);
char q = 'A';
putchxy (5,8,q);
Sleep (2000);
char u = 'T';
putchxy (5,8,u);
Sleep (2000);
char r = 'R';
putchxy (5,8,r);
Sleep (2000);
char t = 'I';
putchxy (5,8,t);
Sleep (2000);
char i = 'X';
putchxy (5,8,i);
Sleep (2000);
cputsxy (5,8,"MATRIX");
Sleep (1000);
cputsxy (12,8,"SYSTEM IS READY ");
Sleep (1000);
cputsxy (28,8,"SEARCHING MORFEUSZ..");
cputsxy (49,8,"MOR ");
Sleep (1000);
cputsxy (49,8,"FEUSZ");
cputsxy (49,8,"MOR ");
Sleep (1000);
cputsxy (49,8," ");
textcolor(LIGHTRED);
cputsxy (5,10,"MORFEUSZ POSITION 230934fd7UEYD");
Sleep (1000);
cin.get();
cin.get();
return 0;
}
– Dodane 28.07.2012 (So) 23:30 –FUNKCJA void movetext (int left,int top,int right,int bottom, int destleft,int desttop) KOPIUJE ZAWARTOŚĆ (TEKST) Z JEDNEGO PROSTOKĄTA DO DRUGIEGO PROSTOKĄT W KTÓRYM ZNAJDUJE SIĘ TEKST (ŁAŃCUCH ZNAKOWY) ZAKREŚLAMY W TEN SPOSÓB ŻE RYSUJEMY GO ZACZYNAJĄC OD POZYCJI - left od lewego górnego roku ekranu - np punktu 2, następnie lecimy od 2 w dół do punktu np 3 - POZYCJA top , w ten sposób mamy już jeden róg prostokąta zaczynający się od 2 left i 3 top , następnie od 3 top rysujemy linię w prawą stronę do punktu numer 11, POZYCJA right , następnie kolejną linię od komórki 11 w dół do punktu numer 5 , POZYCJA bottom - patrz rysunek Oto nasz GOTOWY prostokąt movetext (2,3,11,5). Do tych współrzędnych trzeba dodać współrzędne gdzie prostokąt o wyżej podanych wymiarach zostanie skopiowany, czyli POZYCJE destleft i desttop - nasza funkcja movetext (2,3,11,5, destleft, desttop) Nasz skopiowany prostokąt umieścimy w pozycji zaczynającej się od 2 destleft i 10 desttop w ten sposób mamy wyznaczony punkt od którego nasz skopiowany prostokąt się wyświetli na ekranie. Nasza funkcja movetext (2,3,11,5, 2, 10); NASZ PROSTOKĄT