컴퓨터 과학/C Language

2022-01-23 포인터 변수

계란💕 2022. 1. 24. 00:38

/*
#include <stdio.h>

void add(int* x)
{
    *x = 100;
    printf("%d\n", *x);

}

int main()
{
    int x;
    x = 2;
    printf("%d\n", x);
    add(&x);
    printf("%d\n", x );


    return 0;
}
*/
/*
#include <stdio.h>

void func(int* x)
{

    x[0] = 10;

}

int main()
{
    int ar[5] = {1, 2, 3, 4, 5};
    printf("%d\n", ar[0]);
    func(ar);
    printf("%d\n", ar[0]);

    return 0;
}
*/
/*
#include <stdio.h>
void swap( int a, int b )
{
    int t;
    t = a;
    a = b;
    b = t;
}


int main()
{
    int x, y;
    x = 2, y = 3;
    printf("%d %d\n", x, y);
    swap(x, y);
    printf("%d %d", x, y );

    return 0;
}
*/
/*
#include <stdio.h>

void swap(int* a, int* b)
{
    int t = *a;
    t = *a;
    *a = *b;
    *b = t;
}

int main()
{
    int x, y;
    x = 2, y = 3;

    printf("%d %d\n", x, y );
    swap( &x, &y );

    printf("%d %d", x, y );

    return 0;
}
*/
/*
#include <stdio.h>

int main()
{
    int x = 10;
    int* p = &x;
    int** pp = &p;

    printf("%d\n", x);
    printf("%d\n", *p);
    printf("%d\n", **pp);

    return 0;
}
*/
/*
#include <stdio.h>

int main()
{
    int x = 10;
    int* p = &x;
    int* pp = &p;

    printf("%d\n", *p);
    printf("%d\n", *pp);

    return 0;
}

*/
/*
#include <stdio.h>

int main()
{
    int x = 10;
    int* p = &x;
    int** pp = &p;
    int*** ppp = &pp;
    x = 100;

    printf("%d\n", *p);
    printf("%d\n", **pp);
    printf("%d\n", ***ppp);

    return 0;
}
*/
/*
#include <stdio.h>

void f()
{
    printf("Hello");

    return;
}

int main()
{
    void (*p)();
    p = f;
    p();

    return 0;
}
*/
/*
#include <stdio.h>

int f(int a, int b)
{

    return a + b ;
}

int main()
{
    int(*pp) (int, int);
    pp = f;
    printf("%d ", pp(10, 20));


    return 0;
}
*/
/*
#include <stdio.h>

void f(int a, int b)
{
    int i, s = 1;
    for( i = 1; i < b; ++i)
    {
        s = s * a;
        printf("%d", s );
    }
}

int main()
{
    void(*fp)(int, int)
    fp = f;
    fp(2, 5);

    return 0;
}
*/
/*
#include <stdio.h>

int f1(int a)
{
    return a * a;
}

double f2(int a, int b)
{

    return ( a + b ) / 2.0;
}


int main()
{
    int(*fp)(int);
    double(*dp)(int, int);

    fp = f1;
    dp = f2;

    printf("%.2lf", dp( fp(3), fp(4) ) );


    return 0;
}

*/
/*
#include <stdio.h>

void f(int a, int b)
{
    int i, s = 1;
    for(i = 1; i <= b ; ++i)
    {
        s = s * a;
        printf("%d", s);
    }
}

int main()
{
    void (*fp)(int,int);
    fp = f;
    fp(2, 5);


    return 0;
}
*/
/*
#include <stdio.h>

int f1(int a)
{

    return a * a;
}

double f2(int a, int b)
{
    return (a + b)/ 2.0      ;
}


int main()
{
    int (*fp)(int);
    double (*dp)(int, int);

    fp = f1;
    dp = f2;

    printf("%.2lf", dp(  fp(3), fp(4) ) );


    return 0;
}

*/
/*
#include <stdio.h>

int f(int *a)
{
    int i, s = 0;
    for(i = 0;i < 5;++i)
    {
        s += a[i];
    }
    return s;
}

int main()
{
    int a[] = {4, 7, 1, 5, 3};
    int k = f(a);
    printf("%d", k);

    return 0;
}

*/
/*
#include <stdio.h>

void rever(char* a)
{
    int i;
    for(i = 0; a[i]; ++i)
    {
        putchar(a[i]);
    }
}

int main()
{
    char str[] =  "World Computer";
    rever(str);

    return 0;
}

*/
/*
#include <stdio.h>

int mlen(char* a)
{
    int i, k = 0;

    for(i = 0;a[i]; ++i) k++;m

    return k;
}


int main()
{
    char str[] = "World Computer";
    int k  =  mlen(str);
    printf("%d", k );
    return 0;
}

*/
/*
#include <stdio.h>

int f(int* a)
{
    int i, s = 0;
    for(i = 0;i < 5;++i)
    {
         s += a[i];
    }
    return s;
}

int main()
{
    int a[] = {4, 7, 1, 5, 3};

    int k = f(a);

    printf("%d", k );

    return 0;
}

*/
/*
#include <stdio.h>

int f(int* a)
{
    int i, s = 0;
    for(i = 0;i < 5;++i)
    {
        s = s + *(a + i);
    }

    return s;
}

int main()
{
    int a[] = {4, 7, 1, 5 ,3};
    int k = f(a);
    printf("%d", k );

    return 0;
}
*/
/*

#include <stdio.h>

int cmp(char* a, char* b)
{
    int i, len1 = 0, len2 = 0;

    int mlen;

    for(i = 0; a[i]; ++i ) len1++;
    for(i = 0; b[i]; ++i ) len2++;

    if( len1 > len2 ) mlen = len1;
    else mlen = len2;

    for(i = 0; i < mlen; ++i)
    {
        if (  *(a + i) > *(b + i) ) return 1;
        else if ( *(a + i) < *(b + i)  )return -1;

    } return 0;

}

int main()
{
    char str1[] = "abcde";
    char str2[] = "acde";
    int k = cmp( str1, str2 );
    printf("%d", k);

    return 0;
}
*/
/*
#include <stdio.h>


int main()
{
    int data[4][2] = {1, 2, 3, 4, 5, 6, 7, 8};
    int (*p)[2] = data;

    printf("(1) %d %d\n", data, data[0]);
    printf("(2) %d %d\n", p, p + 1);

    return 0;
}

*/
/*
#include <stdio.h>

int main()
{
    int data[4][2] = { 1, 2, 3, 4, 5, 6, 7, 8};
    int (*p)[2] = data;

    printf("(1) %d %d\n", *( *(p + 2) + 1),  *( (*(p) + 1 ) )   );
    printf("(2) %d %d\n", data[0][0], p[0][0] );

    return 0;
}
*/
/*
#include <stdio.h>

int main()
{
    int com[] = {1 , 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int*p = com + 1;
    ++p;

    printf("[%d] \n", *p );
    printf("[%d] \n", *(p++) );
    printf("[%d] \n", *p );
    printf("[%d] \n", ++*p++ );

    return 0;
}
*/
/*
#include <stdio.h>

int main(void)
{

    int number = 100;
    int arr[4] = {10, 0, 20, 50};

    char data = 'A';

    int* pNumber = &number;
    int* pArr = &arr[2];

    char* pData = &data;
    double* pDouble;

    *pNumber = 50;

    printf("(1) %d \n", sizeof(pArr) );
    printf("(2) %d \n", sizeof(pData) );
    printf("(3) %d \n", sizeof(pDouble) );
    printf("(4) %d \n", number );
    printf("(5) %d \n", *pNumber  );
    printf("(6) %d \n", &arr[3] - &arr[1] );
    printf("(7) %d \n", arr[3] - arr[1] );
    printf("(8) %d \n", ('B' - *pData) * 10 );

    return 0;
}
*/
/*
#include <stdio.h>

int main(void)
{
    char* a = "computer science";
    int len = 0, i;

    printf("(1) %c \n", *a + 1);
    printf("(2) %c \n", *(a + 2) );
    printf("(3) %s \n", a + 3);

    for(i =0; i < 100; ++i)
    {
        if( *(a + i) == '\0' ) break;
        ++len;

    }
    printf("(4) ------\n");
    for(i = len - 1;i >= 0; --i)
    {
        if( *(a+ i) == 'e' )
        {
            printf("%s \n", a +  i);
        }
    }


    return 0;
}

*/

'컴퓨터 과학 > C Language' 카테고리의 다른 글

2022-01-26 구조체 할당  (0) 2022.01.27
2022-01-24 포인터 연습  (0) 2022.01.25
2022-01-21 문자열 연습  (0) 2022.01.22
2022-01-20 문자열  (0) 2022.01.21
2022-01-19 문자열  (0) 2022.01.19