Exemplo n.º 1
0
int main(int argc, char *argv[]) {
	char *zrodlo="randomowy tekst",*cel;
	cel=malloc(sizeof(char)*strlen(zrodlo));
	kopiuj(cel,zrodlo);
	printf("Pierwotny string: %s\nSkopiowany string: %s",zrodlo,cel);
	return 0;
}
Exemplo n.º 2
0
int main(){

	char x[] = "abcdf";
	char *y;
	y = (char *)malloc(sizeof(char)*5);
	kopiuj(y, x);
	printf("%s\n", y);
}
Exemplo n.º 3
0
int main()
{
	char a[255],b[255];
	scanf("%s",a);
	kopiuj(a,b);
	printf("%s\n",b);
	return 0;
};
Exemplo n.º 4
0
/**
 * \brief zwieksza rozmiar tablicy o 1
 */
void stos::zwieksz_o_1()
{
	int* s_tab;
	s_tab=tab;
	tab=new int[rozmiar+1];
	kopiuj(s_tab);
	if (s_tab != NULL)
	delete  s_tab;
	rozmiar+=1;
}
Exemplo n.º 5
0
Arquivo: plik6.c Projeto: batas2/UMK
int main(int argc, char *argv[]){
	FILE *fp, *fp2;
	char c;
	int i;
	fp2 = fopen("plik2.txt", "a"); 
	for(i = 0; i < argc; i++){
		fp = fopen(argv[i], "r");//r+w
		kopiuj(fp, fp2);
		fclose(fp);
	}
	fclose(fp2);
}
Exemplo n.º 6
0
void stos::zmniejsz()
{
	int* s_tab;
	if (rozmiar==0)return;
	if (aktualna==0)delete[] tab;
	else
	{
		s_tab = tab;
		tab = new int[rozmiar/2];
		kopiuj(s_tab);
		if (s_tab != NULL)
			delete[] s_tab;
		rozmiar /= 2;
	}
}
Exemplo n.º 7
0
/**
 * \brief zweikasza dwukrotnie rozmiar stosu gdy brakuje miejsca
 */
void stos::zwieksz_dwa()
{
	int* s_tab;
	if (rozmiar == 0)
	{
		tab = new int[1];
		rozmiar += 1;
	}
	else
	{
		s_tab = tab;
		tab = new int[rozmiar*2];
		kopiuj(s_tab);
		if (s_tab != NULL)
		delete[] s_tab;
		rozmiar *= 2;
	}
}
Exemplo n.º 8
0
int main (int arc, char ** argv)
{

int i,j;

int tab_int[5];
double tab_double[5];

int *wsk_int;
double *wsk_double;

wsk_int=&(tab_int[0]);	//Prosze pamietac ze nazwa tablicy jest jednoczesnie adresem jej zerowego elementu
			//a zatem definicja mogla by wygladac tak wsk_int=tab_int
wsk_double=tab_double;	//zastosowalismy to co jest napisane powyzej

//Zobaczmy jak zachowyje sie wskaznik przy jego inkrementacji o jeden
printf("\nJak zmieniaja sie wskazniki w trakcie inkrementacji \n");
for(i=0;i<5;i++)
printf("i=%d, wsk_int=%ud, wsk_double=%d\n",i, (unsigned int)(wsk_int+i), (unsigned int)(wsk_double+i));


printf("\n\n");
//Widzimy zatem ze mozemy wskazniki wykorzystywac do pracy na tablicach
//uzupelnienie tablicy tab_int
for(i=0;i<5;i++)
	tab_int[i]=i;
//ustawiamy wskaznik na 2 elencie tablicy
wsk_int=&(tab_int[2]);
//wyspisujemy elementy tablicy od tab_int[2]
for(i=0;i<3;i++)
	printf("*(wsk_int+%d)=%d\n",i,*(wsk_int+i));
//tak samo mozemy uzupelniac elementy tablicy
//ustawiamy wskaznik na elemencie zerowym tab_double
wsk_double=tab_double;	//nazwa tablicy to adres jej zerowego elementu
for(i=0;i<5;i++)
	*(wsk_double+i)=i*10.0;

printf("\nTablica tab_double po zainicjalizowaniu wskaznikowym:\n");
for(i=0;i<5;i++)
	printf("tab_double[%d]=%f\n",i,tab_double[i]);

//UWAGA: WSKAZNIKI MOGA ZASTAPIC NAM TABLICE (PATRZ FUNCKJE POWYZEJ)
//W zastosowaniu do funkcji moga byc ich argumentami lub typami zwracanymi

printf("\nUzycie funkcji:\n");
//inicjalizujemy zerami
inicjalizuj(tab_int,5,0);
printf("Po inicjalizacji zerami:\n");
wypisuj(tab_int,5);
//nowa tablica do ktorej skopiujemy stara
int *wsk_kopia;
//najpierw zainicjalizemy stara samymi 5
inicjalizuj(tab_int,5,5);
wsk_kopia=(int*)calloc(5,sizeof(int));
kopiuj(tab_int,wsk_kopia,5);
printf("\nKopia naszej tablicy wyglada tak \n");
wypisuj(wsk_kopia,5);



//Troszke na temat artmetyki wskaznikow:
//dozwolone sa operacje dodawania, odejmowania , porownan ==, != < > <= >=
//w odniesieniu do tablic moze byc to przydatne w celu sprawdzenia liczby
//elementow lub realcji odleglosci miedzy nimi

int tablica[15];
int *wsk_a,*wsk_b;

wsk_a=&(tablica[5]);
wsk_b=&(tablica[10]);
printf("\nwsk_b-wsk_a=%d - odleglosc miedzy elementami tablicy\n",wsk_b-wsk_a);
if(wsk_a!=wsk_b)
printf("Wskazniki pokazuja na rozne elementy tablicy\n");

wsk_a=&(tablica[10]);
if(wsk_a==wsk_b)
printf("Wskazniki pokazuja na te same elementy tablicy\n");
//Nie kazda operacja ma jednak sens np dodawanie wiec prosze uwazac

return 0;
}
Exemplo n.º 9
0
void FormPlaylist::titlelstMenu()
{
	tLMenu.clear();

	tLMenu.addAction( f1.ui.actionPlay );
	tLMenu.addSeparator();
	tLMenu.addAction( f1.ui.actionWyszukaj );
	tLMenu.addSeparator();
	tLMenu.addMenu( &menuPlistAct );
	tLMenu.addSeparator();

	QString selItms, wklejItms;
	if ( titlelist->selectedItems().count() )
		selItms = " -> " + QString::number( titlelist->selectedItems().count() ) + "	Ctrl+C";
	if ( clipboard->mimeData()->hasUrls() )
		wklejItms = " -> " + QString::number( clipboard->mimeData()->urls().count() ) + "	Ctrl+V";
	else if ( clipboard->mimeData()->hasText() )
		wklejItms = " -> " + QString::number( clipboard->mimeData()->text().count() ) + "	Ctrl+V";
	tLMenu.addAction( Texts[57] /* Kopiuj */ + selItms,&fp,SLOT(kopiuj()));
	tLMenu.addAction( Texts[60] /* Wklej */ + wklejItms,&fp,SLOT(wklej()));
	tLMenu.addSeparator();

	tLMenu.addAction( f1.ui.actionZaznacz );
	tLMenu.addAction( f1.ui.actionOdznacz );
	tLMenu.addSeparator();

	tLMenu.addMenu( &menuAdd );
	tLMenu.addAction( f1.ui.delWpisyA );
	tLMenu.addSeparator();

	tLMenu.addMenu( f1.ui.menuSortuj );
	tLMenu.addSeparator();

	tLMenu.addAction( f1.ui.actionClrplist );
	tLMenu.addSeparator();

	tLMenu.addAction( f1.ui.actionInformacje_2 );
	tLMenu.addSeparator();

	tLMenu.addAction( Texts[43] /** "Zapisz muzyke" */+ "	Ctrl+S" , &f1 , SLOT( savMus() ) );
	tLMenu.addAction( f1.ui.aWAV );
	tLMenu.addSeparator();

	tLMenu.addAction( Texts[45] /** "Zapisz playliste" */ + "	Ctrl+T", &fp , SLOT( zapiszB() ) );
	tLMenu.addAction( Texts[46] /** "Odczytaj playliste" */ + "	Ctrl+G", &fp , SLOT( odczytajB() ) );

	tLMenu.addSeparator();
	tLMenu.addAction( f1.ui.sizeA );
	tLMenu.addSeparator();

	InputPlugin *iplug = NULL;
	if ( Func.chkFNr( Func.nr() ) )
		iplug = Func.getMusicFormat( playList[1][Func.nr()], playList[2][Func.nr()] );
	if ( iplug && iplug->showOptions )
	{
		tLMenu.addAction( Texts[100] + ": " + (QString)iplug->pluginInfo->Name /*Plugin options*/ ,&fp,SLOT(pluginOptions()));
		tLMenu.addSeparator();
	}

	tLMenu.addAction( f1.ui.wlasciwosciA );

	tLMenu.popup( QCursor::pos() );
	fp.setTcr( Func.nr() );
}
Exemplo n.º 10
0
void ruchKursorOperacje(wezel *adresListy,unsigned int *kolumnaAdres,unsigned int *wierszAdres)// ruch kursora podczas operacji kopiuj wklej
{

    char znak,buf[ROZMIAR_BUF_KOPIOWANIA];
    unsigned int kolumna,wiersz,licznikKopiowaniaStartX=0,licznikKopiowaniaStartY=0;
    int znakSpec=0,flaga=1,flagaWartoscBuf=0,licznikKopiowania=0; //flaga -> pokazuje czy kursor zostal zablokowany:0/nie zablokowany: 1
    char z=219;//przypisanie kodu ASCII całej zamalowanej komórki konsoli
    CONSOLE_CURSOR_INFO ci;//urywanie kursora
    HANDLE hC=GetStdHandle(STD_OUTPUT_HANDLE);
    GetConsoleCursorInfo(hC, &ci);
    ci.bVisible=1;//wyswietlenie kurosra
    SetConsoleCursorInfo(hC, &ci);
    OpcjeWOperacjach();
    wypiszTekst(adresListy,kolumnaAdres,wierszAdres);
    adresListy=adresListy->glowa;
    adresListy=przejdDoWiersza(adresListy,-1,kolumnaAdres,wierszAdres);
    kolumna=*kolumnaAdres;
    wiersz=*wierszAdres;
    buf[licznikKopiowania]='\0';
    while ((znak=getch())!=27)
    {
        gotoxy(0,7);
        printf(ZAMARZTESKST);
        gotoxy(0,7);
        printf("Status bufora: ");
        if (flagaWartoscBuf==0)//wypisanie stanu bufora
            printf("PUSTY");
        else if(licznikKopiowania<ROZMIAR_BUF_KOPIOWANIA-1)
            printf("CZESCIOWO ZAPELNIONY");
        else
            printf("PELNY");
        if (znak==-32)//znak specjalny np strzalki przekirowanie do obslugi ich
        {

            znakSpec=1;
            continue;
        }//end if
        if (znakSpec==1&&flaga==1)//mozliwosc ruchu kursorem jezeli nie zaczeto zaznaczania i jezeli jest potwierdzenie wcisniecia znaku specjalnego(strzalki)
        {
            switch(znak)
            {
            case 72:
            {
                if (wiersz>0)
                {
                    wiersz--;
                    adresListy=adresListy->poprz;
                    kolumna=adresListy->nrKolumny;
                }
                break;

            }//end case 72
            case 80:
            {
                if (adresListy->nast!=NULL)
                {
                    wiersz++;
                    adresListy=adresListy->nast;
                    kolumna=adresListy->nrKolumny;
                }
                break;

            }//end case 80
            case 75:
            {
                if(kolumna>0)
                    kolumna--;
                else if(adresListy->poprz!=NULL)
                {
                    wiersz--;
                    adresListy=adresListy->poprz;
                    kolumna=adresListy->nrKolumny;
                }
                break;
            }
            case 77:
            {
                if(kolumna<adresListy->nrKolumny)
                    kolumna++;
                else if(adresListy->nast!=NULL)
                {
                    wiersz++;
                    adresListy=adresListy->nast;
                    kolumna=0;
                }
                break;
            }

            }//end switch
            licznikKopiowaniaStartX=kolumna;//poczatek zaznaczania kolumna
            licznikKopiowaniaStartY=wiersz;//poczatek zaznaczania wiersz
            gotoxy(kolumna,wiersz+WYSOKOSC_MENU_GORNEGO);
            znakSpec=0;
            // continue;
        }//end if
        else
        {
            do
            {
                if (flaga==0)
                    znak=getch();
                switch(znak)
                {
                case '+':
                {
                    if (licznikKopiowania<ROZMIAR_BUF_KOPIOWANIA-1)// zeby nie przekroczyc tablicy przechowujaca przekopiowany tekst
                    {
                        gotoxy(kolumna,WYSOKOSC_MENU_GORNEGO+wiersz);
                        printf("%c",z);
                        if (adresListy->tabZnak[kolumna]!='\0')
                        {
                            kopiuj(buf,licznikKopiowania,adresListy->tabZnak[kolumna]);
                            licznikKopiowania++;
                        }
                        else if(adresListy->nast!=NULL)
                        {
                            kopiuj(buf,licznikKopiowania,' ');
                            licznikKopiowania++;
                        }

                        if(kolumna<adresListy->nrKolumny)
                            kolumna++;
                        else if(adresListy->nast!=NULL)
                        {
                            wiersz++;
                            adresListy=adresListy->nast;
                            kolumna=0;
                        }
                        flaga=0;
                        flagaWartoscBuf=1;
                    }
                    break;
                }//end case +
                case '-':
                {

                    if(kolumna>0)
                    {
                        licznikKopiowania--;
                        kolumna--;
                    }

                    else if(adresListy->poprz!=NULL)
                    {
                        licznikKopiowania--;
                        wiersz--;
                        adresListy=adresListy->poprz;
                        kolumna=adresListy->nrKolumny;
                    }//end else if
                    if (licznikKopiowania<0)
                    {
                        flaga=1;
                        flagaWartoscBuf=0;
                        //licznikKopiowania=0;
                    }
                    buf[licznikKopiowania]='\0';
                    gotoxy(kolumna,WYSOKOSC_MENU_GORNEGO+wiersz);
                    printf("%c",adresListy->tabZnak[kolumna]);
                    break;
                }//end case -
                case 'v':
                {
                    if(flaga==1)
                    {
                        wklej(adresListy,buf,kolumna,wiersz);
                        system("cls");
                        OpcjeWOperacjach();
                        wypiszTekst(adresListy,kolumnaAdres,wierszAdres);
                        gotoxy(kolumna,WYSOKOSC_MENU_GORNEGO+wiersz);
                    }
                    break;
                }
                case 'c':
                {
                    flaga=1;
                    break;
                }
                case 'f':
                {
                    system("cls");
                    OpcjeWOperacjach();
                    licznikKopiowania=0;
                    buf[licznikKopiowania]='\0';
                    flagaWartoscBuf=0;
                    wypiszTekst(adresListy,kolumnaAdres,wierszAdres);
                    gotoxy(kolumna,WYSOKOSC_MENU_GORNEGO+wiersz);
                    flaga=1;
                    break;
                }
                case 'x':
                {
                    wytnij(adresListy,buf,licznikKopiowaniaStartX,licznikKopiowaniaStartY,licznikKopiowania);
                    system("cls");
                    OpcjeWOperacjach();
                    wypiszTekst(adresListy,kolumnaAdres,wierszAdres);
                    gotoxy(kolumna,WYSOKOSC_MENU_GORNEGO+wiersz);
                    flaga=1;
                    break;
                }
                }//end switch
            }
            while(flaga==0);
        }//end else
    }//end while
    system("cls");
    PasekOpcjiGorny();
}