![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Alto Nível de programação Post perguntas sobre C, C + +, Java, SQL, e outras linguagens de programação aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| verificação de valor diferente de zero | philplasma | UNIX para Dummies Perguntas & Respostas | 6 | 01-08-2008 04:51 |
| verificação uid | filthymonk | Programação Shell Script e | 7 | 07-19-2007 11:40 |
| Verificado cp progresso | MarGur | UNIX para Dummies Perguntas & Respostas | 0 | 05-15-2007 05:13 |
| Verificado por PXE | maestro @ Altiris | Sun Solaris | 5 | 05-25-2004 01:06 |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
||||
|
Oi,
Estou praticando exercício programas com chamadas de sistema. Pergunta Exercício: escrever um pogram a aceitar um nome do usuário. O programa deverá escrever ecery quinto byte do arquivo para a saída padrão. Meu Programa: # Include <stdio.h> # Include <fcntl.h> # Include <error.h> main () ( int fd, first_offset \u003d 5, move_offset \u003d 0, x \u003d 1; char a, nome [20]; scanf ( "% s", nome); fd \u003d open (nome, O_RDONLY, 0755); printf ( "fd é% d", fd); if (fd \u003d\u003d- 1) ( printf ( "erro"); exit (1); ) while (x <5) ( move_offset \u003d move_offset + first_offset; lseek (fd, move_offset-1, 0); read (fd, nome, sizeof (nome)); write (1, nome, 1); x + +; ) ) Saída: [ramki @ lindesk3 sysint_ex] $ cc ex1.c-o ex1 [ramki @ lindesk3 sysint_ex] $ ./ex1 . / teste FIVEfd é 3 O arquivo "Teste" conteúdo: abcdFfghiIklmnVpqrsE Agora minha pergunta: 1. no programa, eu usei um loop Embora com um varaible "X" e compará-lo ao acaso nenhum dos meus escolha 5. Em vez disso, gostaria de verificar a condição EOF no whilepart. Como verificar isso. Se estamos usando arquivo ponteiro e fopen fn, podemos usar while (feof (fp) \u003d\u003d 0). Mas aqui usamos syatem chamadas e eu não sei como verificar a condição aqui. 2. Na saída te programa, eu achei "cinco" antes de imprimir o número filedescriptor. Mas, como por meu programa de fluxo, fd deverá ser impresso em primeiro lugar e depois a saída "cinco". 3.Is houver qualquer othet forma de escrever o programa mais simples e precisa, especialmente utilizando piointer para obter o nome do arquivo, instaed de utilizar Array. Please Help ... Obrigado, Ramkrix |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|