The UNIX and Linux Forums  
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.

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
Passando variável global para uma função que é chamada por outra função SRA Programação Shell Script e 4 06-30-2008 11:39
Log função Ernst Programação Shell Script e 17 03-19-2007 12:31
Função na função (Recurance) chassi UNIX para Dummies Perguntas & Respostas 2 09-19-2006 09:32
função mpang_ Programação Shell Script e 1 07-26-2006 12:16
Como converter a "escolha" em função de uma "sondagem" função rbolante Alto Nível de programação 1 07-10-2001 10:49

Closed Thread
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 07-22-2008
Marconi marconi is offline
Usuário
  
 

Join Data: dezembro 2007
Lugares: 41
Quanto cuserid () função em "C"

Oi,

Estou fazendo uma (Marca gapw), onde tenho a seguinte linha de código na Linha No.96: --

96 desfazer strcpy (user, (char *) cuserid ((char *) 0));

Mas eu não sou capaz de compilar apenas 1 devido ao seguinte erro: --

gapw.c: Em função `main ':
gapw.c: 96: warning: cast para ponteiro de inteiros de tamanho diferente

Eu incluído e <stdlib.h> # include # include <libgen.h>, no arquivo, mas ainda não sou capaz de compilar.

Penso que, há um problema com o uso de cuserid () function.

Pedir-lhe o favor de me ajudar a depurar o erro.

Thanks in advance.

Atenciosamente,
Marconi

Última edição por Marconi, em 07/22/2008 03:59..
  #2 (permalink)  
Old 07-22-2008
shamrock shamrock is offline Forum Advisor  
Usuário
  
 

Join Date: Oct 2007
Localização: E.U.A.
Posts: 750
Que tipo de plataforma você está?
cuserid () será removido algum tempo no futuro, por isso, é recomendado usar a sua substituição como getpwuid () ou getlogin ().
  #3 (permalink)  
Old 07-22-2008
Marconi marconi is offline
Usuário
  
 

Join Data: dezembro 2007
Lugares: 41
Oi,

Atualmente, estou no OS: - Red Hat Linux Versão 3.0. Estou executando o script é um script compatível HP Tru64 Unix
o que estou tentando executar no Linux Versão 3.0.

Em vez de: - desfazer strcpy (user, (char *) cuserid ((char *) 0));

Eu usei como cada um dos seguintes por sua sugestão: --

Descartar strcpy (user, (char *) getlogin ((char *) 0));

ou

Descartar strcpy (user, (char *) getpwuid (getuid ((char *) 0)));

mas ainda está me mostrando os seus erros seguintes: --

$ Fazer gapw
cc-c-o gapw.o gapw.c
gapw.c: Em função `main ':
gapw.c: 101: erro: muitos argumentos para funcionar »getlogin '
make: *** [gapw.o] Erro 1

ou

$ Fazer gapw
cc-c-o gapw.o gapw.c
gapw.c: Em função `main ':
gapw.c: 102: erro: muitos argumentos para funcionar »getuid '
gapw.c: 102: warning: cast para ponteiro de inteiros de tamanho diferente
make: *** [gapw.o] Erro 1


Pedir-lhe para dar pls ur insumos.

Atenciosamente,
Marconi.

Última edição por Marconi, em 07/22/2008 04:06..
  #4 (permalink)  
Old 07-23-2008
fpmurphy's Avatar
fpmurphy fpmurphy is offline Forum Staff  
Moderador
  
 

Join Data: dezembro 2003
Localização: Florida
Posts: 1.921
Tem incluindo a necessária para cabeçalhos getlogin () e / ou getpwuid ()?

getlogin () requer <unistd.h>
getpwuid () requer <sys/types.h> e <pwd.h>
  #5 (permalink)  
Old 07-23-2008
jim McNAMARA jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: Feb 2004
Localização: NM
Mensagens: 5.748
corrigida sintaxe para getlogin
Código:
/* top of file */
#include <unistd.h>
/* ..... some of your code here down to line 101 */
strcpy(user , getlogin() );
  #6 (permalink)  
Old 07-24-2008
Marconi marconi is offline
Usuário
  
 

Join Data: dezembro 2007
Lugares: 41
Oi,

Eu já tinha adicionado o cabeçalho 3 ficheiros, tal como sugerido pela murphy a seguinte: --

# include <stdio.h>
# include <string.h>
# include <sys/types.h>
# include <unistd.h>
# include <limits.h>
# include "ifile.h"
# include <libgen.h>
# include <stdlib.h>
# include <pwd.h>


O código anterior tinha cuserid () da seguinte forma: --

1) Rejeitar strcpy (user, (char *) cuserid ((char *) 0));

Como cuserid () não é uma função válida em linux, eu posso usar qualquer getlogin () ou getpwuid ()

Como por Jim's sugestão, se eu colocar o código como este: --

2) Rejeitar strcpy (user, getlogin ());

Eu não tenho nenhum erro, como segue: --


$ Gcc gapw.c
/ tmp/cc6K9ODh.o (. 0 x21d texto): Em função `main ':
: Referência indefinida para `getprofilestring '
/ tmp/cc6K9ODh.o (. 0 x2ec texto): Em função `main ':
: Referência indefinida para `getprofilestring '
collect2: ld retornou 1 saída estado

$ Fazer limpa
rm-f getkey.o ifile.o bitt.o getkey getapp \
putkey getall getappkeys gapw filetime filetime.o gapw.o Bitt \
libExtRelan.so ambiente envi.o

$ Fazer gapw
cc-c-o gapw.o gapw.c
cc-c-o ifile.o ifile.c
cc-o gapw gapw.o ifile.o-lc_r
/ usr / bin / ld: cannot find-lc_r
collect2: ld retornou 1 saída estado
make: *** [gapw] Erro 1

$


Mas, acho que a lógica será alterado quando comparamos com o código 1) e 2), acima.

Além disso, quando eu faço um gcc gapw.c, eu ainda obter os erros acima, ainda que não há erros
quando eu faço uma gapw fazer.


Pedir-lhe o favor de dar a sua produção.

Muito obrigado antecipadamente.

Atenciosamente,
Marconi.
Closed Thread

Marcadores

Tags
solaris

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 06:28.


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