Copa_7 Posted November 8, 2009 at 05:38 PM Report Share #295146 Posted November 8, 2009 at 05:38 PM Boas... É o seguinte, tou a testar um programa que cria um cliente e um servidor com o protocolo UDP. Mas estao me a surgir algumas questoes sobre o codigo em causa... Por exemplo na funçao main está declarada da seguinte forma Int main (int argc, char *argv[]){ .... }, pelo que percebo a string enviada ficara guardada em argv[]... Mas ja depois de ter sido criado os sockets e tudo mais, quando é feito a funçao sendto(), está feita da seguinte maneira sendto(sockfd,argv[1],msg_len (...)), nao percebo como é que fazendo argv[1] a string é enviada por completo! E ja agora para que serve a variavel argc? Peço desculpa por esta duvida que deve ser estupida... Link to comment Share on other sites More sharing options...
Baderous Posted November 8, 2009 at 06:12 PM Report Share #295151 Posted November 8, 2009 at 06:12 PM Ao correres o programa, o argv[0] contém o nome do executável e o argv[1] a string que queres enviar. O argc conta o nº de parâmetros que vão ser guardados no argv. #include <stdio.h> int main(int argc, char **argv) { printf("%d\n%s\n",argc,argv[1]); return 0; } Se eu invocar o programa da seguinte forma: ./exemplo p@p Ele vai devolver: 2 p@p http://publications.gbdirect.co.uk/c_book/chapter10/arguments_to_main.html Link to comment Share on other sites More sharing options...
Copa_7 Posted November 8, 2009 at 06:16 PM Author Report Share #295152 Posted November 8, 2009 at 06:16 PM Ah ya ja percebi... Obrigado mesmo ;-) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now