Bonjour,

Je me suis mis récemment sur l'IDE Visual Studio.
J'ai repris les programmes que j'avais fait sur Code Block.
Et là c'est le drame, je n'arrive pas à faire un simple strcpy() en langage C.
J'ai le message d'erreur suivant :
error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

Ci dessous mon code source (qui fonctionne sous Code Block) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
 
//Bibliothéques
//=========================================================================
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//=========================================================================
 
/*
* FONCTIONS SUR LES STRINGS (CHAINE DE CARACTERES)
======================================================================================
- strlen donne la taille de la chaine de caractere,
  ATTENTION, ne prends pas en compte le caractere fin de chaine = '\0'
 
- strchr(chaine, char) retourne l'adresse (pointeur) du premier char trouvé dans la chaine
	char c = 'o';
 
 - strcmp (chaine1, chaine2)
	si chaine1 == chaine2 alors return 0
	si chaine1 > chaine2 (APRES ordre alphabétique ) alors return +1
	si chaine1 < chaine2 (AVANT ordre alphabétique ) alors return -1
 
- strcpy(chaine1, chaine2) => copie chaine2 dans chaine1
*/
 
 
// Fonction main (principale = point d'entré du programme)
//=========================================================================
int main(void)
{
	char chaine[] = "hello";
 
	// strlen()
	printf("La chaine est : %s\nSa taille est : %d\n", chaine, strlen(chaine));
 
	// strchr()
	char c = 'O';
	char *p_char = strchr(chaine, c);
	char *p_chaine = chaine;
	int position = ((int)p_char) - ((int)p_chaine) + 1;
 
	// Gestion de l'erreur (pointeur NULL)
	// ========================================================================
	if (p_char == NULL)
		printf("Le char : %c n'est pas présent dans la chaine : \"%s\"\n", c, chaine);
 
	else
		printf("La chaine : %s\nLe caractere : %c\nLa position : %d\n", chaine, c, position);
	// ========================================================================
 
	// strcmp()
	char chaine_test[] = "xhellO";
 
	if (strcmp(chaine, chaine_test) == 0)
		printf("Les chaines sont identiques");
 
	else if (strcmp(chaine, chaine_test) == 1)
		printf("%s > %s", chaine, chaine_test);
 
	else if (strcmp(chaine, chaine_test) == -1)
		printf("%s < %s", chaine, chaine_test);
 
	// strcpy(destination, source)
	// ATTENTION AU DÉPASSEMENT DU TABLEAU POUR LA NOUVELLE CHAINE !
	strcpy(chaine, "Hello");
	printf("%s\n", chaine);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
	/*
 
 
 
 
		// - strcat(chaine1, chaine2) => concatene (colle de gauche à droite (chaine1chaine2)
		//   ATTENTION AU DÉPASSEMENT DU TABLEAU POUR LA NOUVELLE CHAINE !
		strcat(message, " word");
		printf("message = %s\n", message);
 
 
		// - long strtol(chaine, pt_fin, base) (string to long)
		// Transformer une chaine de caractere representant un nombre en un vrai nombre
		strtol("12345", NULL, 10); // => 12345 (le nombre)
		strtol("12€", NULL, 10);   // => 12    (le nombre)
 
 
		// - double strtod(chaine, pt_fin)
		strtod("12.3", NULL);	// 12,3 (le nombre)
		strtod("12.2€", NULL);	// 12,2 (le nombre)
 
		// - sprinf(message, chaine avec format, valeur format)
		// écris dans message la chaine avec format
		sprintf(message, "prix=%d€", 3);
 
	*/
 
	return 0;
}