当前位置:网站首页>Vs | quelques petits détails

Vs | quelques petits détails

2021-10-14 06:28:43 Ersansui

Visual Studio Quelques petits détails

(S'il y a de nouvelles découvertes,Sera continuellement complété)


Un..Une partie de la fonction n'est pas sécurisée et une erreur est signalée

Croyez - le.VSC'est ce qui arrive aux élèves du compilateur:Lorsque vous utilisezscanf、strcpy、strcat、sscanfLorsque la fonction est égale,Le compilateur demandera un message d'erreur.

ParscanfPar exemple,Les messages d'erreur suivants seront affichés:

error C4996: 'scanf': This function or variable may be unsafe.
 Consider using scanf_s instead.
 To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

C'est parce que,En cas d'utilisation inappropriée,Ces fonctions sont sujettes à un accès transfrontalier

EtVSLe compilateur nous fournira des fonctions alternatives pour:Par exemple:scanf_s、strcpy_sAttendez un peu!

Mais nous écrivonsCQuand il s'agit de programmes linguistiques,Afin de garantir l'universalité du Code,Généralement non utiliséVSFonctions fournies par le compilateur

La solution est la suivante:

1. Prédéfini manuellement

On peut suivre les conseils,Utiliser avant le Code#definePour prédéfinir

#define _CRT_SECURE_NO_WARNINGS 1

En fait..., Le dernier chiffre de cette ligne de code “1”,Peut être omis

2. Propriétés du fichier prédéfinies

Trouver le projet dans l'explorateur où se trouve le Code actuel → Clic droit de la souris → Propriétés

Après avoir ouvert la page de propriété ,C/C++ → Préprocesseur → Définition du préprocesseur

Puis ajoutez le Code

 _CRT_SECURE_NO_WARNINGS

Insérer la description de l'image ici

Insérer la description de l'image ici

3. Fichiers système prédéfinis

Bien que les deux méthodes ci - dessus puissent résoudre le problème , Mais pas assez pratique , Chaque nouveau projet nécessite une opération .

Et vouloir“Une fois pour toutes”, Vous pouvez utiliser la méthode suivante .

InVS Dans le fichier d'installation de , Recherche de fichiers ,Trouvé un nom“newc++file.cpp”Documents, Puis faites - le glisser sur le Bureau du système

Clic droit de la souris, Pour le modifier .

Il suffit d'ajouter un code .

#define _CRT_SECURE_NO_WARNINGS 1

Attention!: Les chiffres ici “1” Peut encore être omis .

Par la méthode③Fonctionnement, À chaque fois qu'on l'utilise VS Quand le compilateur crée un nouveau fichier source , Ce fichier ajoute par défaut un code prédéfini à la première ligne .

Insérer la description de l'image ici


2..La console clignote

InVS2019Dans le compilateur, Il n'y a pas de clignotement de la console , Mais dans les versions antérieures VSDans le compilateur, Peut - être

Il y a eu un flash de la console .

La solution est la suivante:

1.Méthode de codage

On peut utilisergetchar() Fonction pour mettre la console en pause , À ce stade, il suffit d'entrer n'importe quel caractère sur le clavier ,getchar()

La fonction lit le caractère , Pour compléter l'appel et faire disparaître la console .

Bien sûr., Si le programme est précédé d'une déclaration d'entrée , Deux fois getchar() C'est une fonction

Parce que la première phrase getchar() Est utilisé pour lire la dernière entrée ’\0‘
Deuxième phrasegetchar() Pour mettre notre console en pause , Attendez que nous entrions n'importe quel caractère


Ou,On peut utilisersystem(“pause”) Pause console à l'arrivée

Le code spécifique est implémenté comme suit

#include<stdlib.h>
int main()
{
    
	//Bloc de code
	system("pause");
	return 0;
}

2.Configuration des propriétés

Nous sommes dans solution explorer , Trouver le projet où se trouve le fichier source → Clic droit de la souris → Propriétés
Après avoir ouvert la page de propriété ,Cliquez sur Linker → Système → Sous - système → Sélectionnez la console

Insérer la description de l'image ici

Voilà., Le problème est résolu !


La création n'est pas facile, J'espère que tout le monde peut faire quelque chose de bien 、Commentaires、Avant、 Attention à un dragon !

Votre soutien est ma plus grande motivation pour créer !!

Insérer la description de l'image ici

版权声明
本文为[Ersansui]所创,转载请带上原文链接,感谢
https://chowdera.com/2021/10/20211013211538558h.html

随机推荐