begin process at 2010 02 10 10:55:16
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

[ C ] copier ds un tableau apres un read?


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

[ C ] copier ds un tableau apres un read?

jeudi 25 novembre 2004 à 14:47:03 | [ C ] copier ds un tableau apres un read?

lcstriker

Membre Club
bonjour!!!

g un leger probleme, que je suis sur vous serai nombreux a pouvoir resoudre:

#include <fcntl.h>
#define BUFF_SIZE 42

int main(int ac, char **av)
{
char *temp;
int nb_read;
char buffer_read[BUFF_SIZE];
int fd;

if (ac == 1)
my_putstr("et le fichier boulet!!!\n");
if (ac == 2)
{
fd = open(av[1], O_RDONLY);
while (nb_read = read(fd, buffer_read, 1))
{
my_putstr(buffer_read);
}
}
}

j'aimerai (a la place du my_putstr), copier le buffer_read dsa un tableau ou un char *?

merci de votre aide.
jeudi 25 novembre 2004 à 14:59:24 | Re : [ C ] copier ds un tableau apres un read?

djl

si null terminated string, strcpy par exemple
samedi 27 novembre 2004 à 19:24:16 | Re : [ C ] copier ds un tableau apres un read?

leprov

préférer strncpy.....évite le risque de stackoverflow
lundi 29 novembre 2004 à 07:53:06 | Re : [ C ] copier ds un tableau apres un read?

Nashua

int my_putstr ( int read_buf_len, char *read_buf, char *table){
// Je passe la longueur de read_buf pour eviter tout debordement
// ne pas oublier que read peu retourner -1 en cas d'erreur ( la condition du while est toujours vraie -):

// je passe aussi le pointeur sur le read buffer
// enfin le pointeur sur la table de reception

if (read buf_len > 0)
// check la longueur est strictement superieure a 0

// strncpy ne serait pas utile dans cet example vu que le read est de 1 mais il rend la fonction plus generique
if strncpy ( table, read_buf,read_buf_len ) > 0 ) return 0;

// sans strncpy
table = read_buf ; return 0;
return -1;
}

// la connexion avec ton code serait ainsi :
// cas du char *
char my_table[BUF_SIZE] ;
// cas du char ** le tableau
char *my_table[BUF_SIZE] ;

int n = 0;
while ((nb_read = read(fd, buffer_read, 1)) && ( n < BUF_SIZE))
{
// cas d'un char *
if (( my_putstr(1,buffer_read, &table[n++]) < 0 ) exit 1;
// cas d'un char **
// penser a "malloquer" la table
if (( my_putstr(nb_read,buffer_read, table[n++]) < 0 ) exit 1;
}

Amicalement
Yves



Cette discussion est classée dans : buffer, int, char, copier, read


Répondre à ce message

Sujets en rapport avec ce message

taille chaine de char [ par langedechu ] Salut , voila mon prob (je sais plus comment faire) :j'ai une variable : const char *buffer; et j aimerais savoir le nombre de caractere stocker dans Comment forcer le RTS pour une liaison RS232 [ par ancat ] Bonjourje viens de faire un petit prog (grandement inspire de sources du site) mais je ne saisis pas trop le controle du RTS.Celui ci est-il traite pa Création d'un client [ par tomalille ] Bonjour,je viens d'écrire ce code qui cré un client qui se connecte sur un serveur apache. A la compilation (sous visual C++) j'ai 5 erreurs, je ne co strcat : fonction( char* buffer, int nb ); [ par wizard512 ] Bonsoir,Je souhaiterais savoir Si une fonction similaire a strcat() existerais,mais qui ajoute un entier ( int ) dans une analyseur lexical pascal [ par perrotta ] Bonjour, dsl pour ma langue je parle pas bien le français; je suis entrin de devlopper un analyseur lexical pour un programme (pascal) prèci ,et j'ai Erreur C4430 (besoin d'aide) [ par lui88 ] Bonjour , une erreur est apparu dans mon code error c4430:spécificateur de type manquant - int est pris en compte par défaut.remarque: C++ ne prend pa Passer un tableau de char en paramètre [ par DeadStar117 ] Bonjour,Je cherche à passer des tableaux de char en paramètre à mes procédure mais je n'y arrive pas.Voila un exemple de code:GestionArbre GeAr;<font Convertir tableau int en const char* et inverse [ par samuraijack1412 ] Bonjour,J'ai écrit une application client-serveur. Ils se communiquent par des sockets TCP. Pour envoyer au serveur un tableau d'entier, j'utilise:int [C++] 2 char => 1 int [ par Apaachee ] Bonjour, Je possède une opération : 1+99 que je place dans un tableau de char : coutcin>>exp; //La variable exp contient l'opération C++ Conversion d'un int en const char* [ par jderf ] Bonjour, Je récupere d'une boîte de dialogue l'index du choix fait. Je souhaite afficher cette valeur dans un message box. Voici mon code Uint Choi


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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,889 sec (3)

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