ÇÁ·Î±×·¡¹Ö

 3204, 1/161 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   kalon
   [C¾ð¾î] redefinition of struck flock ¿¡·¯

http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_programming&no=2771 [º¹»ç]


cslab:~/SystemSoftware(4)% gcc -o test ss.c
ss.c:7: error: redefinition of `struct flock'

ÇÑ ÆÄÀÏÀ» ÀÛ¾÷ÁßÀ϶§ ´Ù¸¥ °÷¿¡¼­ Á¢¼Ó ¸øÇÏ°Ô ¶ôÀ» °Å´Â ÇÁ·Î±×·¥À»
½Ã½ºÅÛ È£Ãâ??À» Çؼ­ ÇÏ´Â °Çµ¥¿ä
Çб³ Unix ¼­¹ö¿¡¼­ gcc ·Î ÄÄÆÄÀÏÇϴµ¥
ÀÌ·± ¿¡·¯°¡ ¶ß³×¿ä ¹öÀü ¹®Á¦¶ó°í º» °Í°°Àºµ¥
¾î¶»°Ô ÇØ°á ÇÒ ¼ö ÀÖÀ»±î¿ä?
Ȥ½Ã Äڵ忡 ¹®Á¦°¡ ÀÖ´Ù¸é ÄÚ¸àÆ® ºÎŹµå¸³´Ï´Ù.

------------------------------------------------------------------------------------------------


#include <fcntl.h>
#include <errno.h>
#define F_RDLCK 01/* read lock */
#define F_WRLCK 02/* write lock */
#define F_UNLCK 03/* release lock */
struct flock {
        short l_type; /* record locking type */
        short l_whence; /* same as lseek */
        long l_start; /* start of locked segment */
        long l_len; /* byte length of locked segment if 0, lock to EOF */
        short l_sysid;
        short l_pid;
        };
/* values for l_type */
int main(int argc, char *argv[])
{
        struct flock lock;
        int fd;
        char command[100];
                if ((fd = open(argv[1], O_RDWR)) == -1)
                {
                        perror(argv[1]);
                        exit(1);
                }
                lock.l_type = F_WRLCK;
                lock.l_whence = 0;
                lock.l_start = 0L;
                lock.l_len = 0L; /* whole file address space */
                if (fcntl (fd, F_SETLK, &lock) == -1)
                {
                        if (errno == EACCES)
                        {
                                printf("%s busy --try later\n", argv[1]);
                                exit(2);
                        }
                        else
                        {
                                perror(argv[1]);
                                exit(3);
                        }
      
                sprintf(command, "vi %s\n", argv[1]);
                system(command);
                lock.l_type = F_UNLCK; /* unlock file */
                fcntl(fd, F_SETLK, &lock);
                close(fd);
                exit(0);
}

  Hit : 5764     Date : 2010/11/22 04:19



    
blueh4g flock À̶ó´Â ±¸Á¶Ã¼ ¸íÀ» ´Ù¸¥°É·Î º¯°æÇØÁÖ¼¼¿ä. =) 2010/11/24  
blueh4g À§¿¡ »õ·Î Á¤¸³ÇϽŠflock ±¸Á¶Ã¼°¡ ¿ø·¡ Á¸ÀçÇÏ´Â ±¸Á¶Ã¼À̱⠶§¹®¿¡, »õ·Î ÀçÁ¤¸³Çϴµ¥¼­ »ý±â´Â ¿¡·¯ÀÔ´Ï´Ù~~ 2010/11/24  
kalon ¾Æ ±×·¸±º¿ä~ ´äº¯ °¨»çÇÕ´Ï´Ù.~~ 2010/11/26  
3204   Ä¡Æ®¿£Áø °í¼öºÐ °è½Ç±î¿ä[1]     rjsdudals123
02/15 214
3203   ¿À·ù Á» ã¾ÆÁÖ¼¼¿ä [1]     marunim
05/30 951
3202   c¾ð¾î segmentation fault:11 ¿À·ù Áú¹®µå¸³´Ï´Ù![2]     leebk1124
05/21 2028
3201   C++ÇÔ¼ö°ü·Ã Áú¹®ÀÌ¿¡¿ë!![3]     1999dylee
05/11 1858
3200   ÆÄÀ̽ã Áö¹® µå¸³´Ï´Ù.[1]     kksh1107
04/24 1598
3199   ¸®¹ö½ÌÀÇ ¼¼¹ø¤Š ²É - ¿ª¶û-     nninni79
04/20 2303
3198   ´Þ°í³ª ¹®¼­ ½©ÄÚµå[1]     ghjk645
03/24 1620
3197 ºñ¹Ð±ÛÀÔ´Ï´Ù  c¾ð¾î ¼Ò¼ö °ª     adwefq
04/29 1
3196   C¾ð¾î ¼Ò½ºÁú¹®ÀÔ´Ï´Ù![5]     an0088
01/05 5172
3195   C++ /// ºôµå ¿¡·¯ ¤Ð¤Ð[1]     guichanta
08/23 2406
3194 ºñ¹Ð±ÛÀÔ´Ï´Ù  c¾ð¾î µµ¿ÍÁÖ¼¼¿ä¤Ð¤Ð     su6339
04/06 0
3193   ÇØÅ·À» ¹è¿ì·Á°íÇϴµ¥[3]     zoodem04
03/26 4186
3192   c¾ð¾î¸¦ ¹è¿ì°í½Í¾î¿ä ![7]     dwc07238
02/11 4091
3191   ½ºÅÃÀÌ ½×ÀÌ´Â ¹æÇâ¿¡ °üÇؼ­!![1]     hackxx123
12/10 3534
3190   ÇØÅ·Åø¿¡¼­ ip ¾øÀÌ Çϵ忡 ½É´Â°Å¿¡´Â ¾î¶²°Ô ÀÖÀ»±î¿ä?[2]     aowlrgmlals
11/27 4315
3189   C¾ð¾î Çϴµ¥ double ½Ç¼ö¸¦ ³ÖÀºµ¥ ÀÚ²Ù 0.0ÀÌ ³ª¿Í¿ä[2]     fatou10336
11/20 3776
3188   dumpcode.h ÀÌÇØÁ» µµ¿ÍÁÖ¼¼¿ä .[1]     cm6418
11/06 3748
3187   c¾ð¾î ¾Ë°í¸®Áò Áú¹®ÀÔ´Ï´Ù.[3]     alstn8150
10/12 3763
3186     [re] c¾ð¾î ¾Ë°í¸®Áò Áú¹®ÀÔ´Ï´Ù.     dafher
05/13 1597
3185   c¾ð¾î ¼Ò½º Áú¹® ¹¹°¡ ¹®Á¦ÀÎÁö¤Ì¤Ì¤Ì¤Ì[2]     sjjh96
05/23 4302
1 [2][3][4][5][6][7][8][9][10]..[161]

Copyright 1999-2024 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org