begin process at 2012 05 29 10:36:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Réseau / Internet

 > 

Ecriture de plusieurs mots à la suite....


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ecriture de plusieurs mots à la suite....

samedi 11 juin 2005 à 14:14:44 | Ecriture de plusieurs mots à la suite....

neo927

Bonjour à tous,

voilà mon ptit problème, je suis débutant en language C et j ai pas très bien compris la différence en les char, les strings, ...

J ai créer un ptit programme très simple qui envoie des net send, il demande à qui l envoyé et le texte (voila le problème). Quand j'écris un texte, il n y a que le premier mot qui s'affiche. Comment faire pour avoir le reste du message?

Voila mon code:
#include <stdio.h>
#include <stdlib.h>
main()
{
char* txt[100],
     commande[100],
     ip[10];
printf("Entrer le message:\t");
scanf("%s",&txt);
printf("Entrer le nom\n du destinataire:\t");
fflush(stdin);
scanf("%s",&ip);
sprintf(commande,"net send %s %s", ip, txt);
system(commande);
system("pause");
return 0;
}

Merci d'avance pour l intéret apporté à mon code et désolé pour mon ignorance....
samedi 11 juin 2005 à 14:29:26 | Re : Ecriture de plusieurs mots à la suite....

NeoUmbrella

Moi a ta place j'utiliserais cin.getline(commande, 100, '\n');
Ainsis tu récupère tout jusq'au saut de ligne, tu dois inclure le fichier <iostream>.
samedi 11 juin 2005 à 16:14:11 | Re : Ecriture de plusieurs mots à la suite....

Matt67

Bonjour,

NeoUmbrella > Il veut faire du C.

#include <stdio.h>
#include <stdlib.h>

main()
{
  char txt[100], commande[100], ip[10];
  printf("Entrer le message : ");
  scanf("%s",txt);
  printf("Entrer le nom du destinataire : ");
  scanf("%s",ip);

  sprintf(commande,"net send %s %s", ip, txt);
  system(commande);
  system("pause");
 
  return 0;
}

Matt...
samedi 11 juin 2005 à 18:15:23 | Re : Ecriture de plusieurs mots à la suite....

AlexMAN

Membre Club
Pas de scanf() si le message a recuperer contient des espaces, fgets() si je me souviens bien devrait faire l'affaire.

+2(p - n)
dimanche 12 juin 2005 à 11:48:26 | Re : Ecriture de plusieurs mots à la suite....

neo927

Hello Matt67,
oui, moi code est bien en C.
Salut, AlexMAN,
j'ai essayé de remplacer scanf() par fgets() mais mon compilateur me marque une erreur.  - warning: passing arg 2 of 'fgets' makes integer from pointer wihout a cast
- too few arguments to function 'fgets'

fgets("%s",&txt);

est ce moi qui tappe faut la commande?


mardi 14 juin 2005 à 09:54:59 | Re : Ecriture de plusieurs mots à la suite....

buno

Administrateur CodeS-SourceS
Oui et non , tu as été abusé...
Il faut utiliser gets() et non pas fgets()...

Buno
----------------------------------------
L'urgent est fait, l'impossible reste à faire. Pour les miracles, prévoir un délai...
mardi 14 juin 2005 à 13:35:32 | Re : Ecriture de plusieurs mots à la suite....

Matt67

Bonjour,

Surtout pas gets mais bien fgets...

Matt...
mardi 14 juin 2005 à 14:00:45 | Re : Ecriture de plusieurs mots à la suite....

buno

Administrateur CodeS-SourceS
Matt67: pourquoi donc?

voici un petit test:

char _Name1[256], _Name2[256];
printf("Enter your name:\n");
gets(_Name);      // je tape: "a b c d"
printf("\nhello %s\n", _Name);    // _Name contient "a b c d"
fgets(_Name2, 256, stdin);   // je tape la même chaine
printf("\nhello %s\n", _Name2);  // _Name2 contient aussi "a b c d"
system("pause");

Les deux écritures me donnent le même résultat, la 1ère est plus intuitive que la seconde à mon avis..

Buno
----------------------------------------
L'urgent est fait, l'impossible reste à faire. Pour les miracles, prévoir un délai...
mardi 14 juin 2005 à 14:39:20 | Re : Ecriture de plusieurs mots à la suite....

vecchio56

Administrateur CodeS-SourceS
D'accord avec buno, je crois que gets et fgets(.., stdin) sont tout simplement identiques
mardi 14 juin 2005 à 14:59:18 | Re : Ecriture de plusieurs mots à la suite....

Matt67

Bonjour,

Je reprend le programme de buno mais je change la taille de _Name1 et _Name2

char _Name1[5], _Name2[5];
printf("Enter your name:\n");
// je tape: "abcdefgh", gets accepte la chaine sans broncher (j'ai de la chance pas de plantage)
gets(_Name);     
printf("\nhello %s\n", _Name);
// je tape: "abcdefgh", fgets ne recupere que "abcd", donc OK !
fgets(_Name2, 5, stdin);
printf("\nhello %s\n", _Name2);
system("pause");

Si les deux fonctions ont la même "vocation", autant utiliser fgets pour limiter les erreurs.

Matt...

1 2

Cette discussion est classée dans : txt, mots, commande, ip, ecriture


Répondre à ce message

Sujets en rapport avec ce message

comment recuperrer un à un les mots d'un richedit [ par ranosimamy ] comment recuperrer un à un les mots d'un richedit.ces mots à inserer dans des fichier txt: a.txt, b.txt,....z.txt selon le debut de chaqueMerci pour l Supprimer des mots dans une phrases ... [ par oshin ] Salut,J'aimerais arriver a faire en sorte que lorsque mon bot recoie une commande, il enléve certain mot ex:!cmd nickserv identify passwordhé bien là Statistiques sur fichiers txt [ par liath666 ] Salut tout le monde !Je suis apprenti programmeur et je cherche a faire une analyse statistique sur des fichiers textes. Il s'agit en fait de programm Je n'y comprend plus rien :-( [ par ChrOnOs83 ] Slt à ts,tout dabor je suis dsl mais je ne savai pa tro comen resumé mon pb en quelque mot et c pr cela ke je né pa fai un sujet clair.en realité jaim Ecriture dans un fichier.bat [ par mohken ] Bonjour, j'ai un problème d'écriture dans un fichier .bat J'utilise ces lignes de code: char commande [ 50 ]; // tableau contenant la commande a envo Connaître le résultat retournée par la commande system [ par pcmanprogrammeur ] Bonjour! Je suis actuellement en train de créer un programme en C sous LINUX où je dois aller visiter un fichier texte. Je crée une variable : char co commande net send [ par inconnu2nulpar ] slt, je voulais savoir comment en  c je peu envoyer un pop sur mon propre PC ( sans que je connaisse mon IP ) pour l'insatant j'utilise la fonction sy Prob ecriture .txt [ par brice45 ] Bonjour, J'ai un fichier .txt de cette forme 495.27000..........A495.32000..........B495.37000..........C495.42000..........D Et je voudrai que Ecriture dans un fichier [ par 0x80h4x0r ] Salut,J'ai code un petit programme de hook de clavier qui ecrit les touches sur un fichier .txt . le probleme c'est que si je ne code pas le nom absol probleme variable C [ par ganjarasta ] sltje voudré savoir comment "implenté" une variable en language Cdans une variable DOS.malgré des recherche sur le net je né rien trouvé.mon idée :cré


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales