The UNIX and Linux Forums  


Go Back   O UNIX e Linux Forum > Top Fóruns > Alto Nível de programação
.
google unix.com



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

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 03-06-2008
ramkrix ramkrix is offline
Usuário
  
 

Join Data: dezembro 2007
Localização: TamilNadu, ÍNDIA
Lugares: 52
Exclamation EOF verificar a seguir

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
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 03:56.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0