Y at-il une bibliothèque C# qui fournit la fonctionnalité de ">>" et "< <" pour IO en C++? C'était vraiment pratique pour les applications console. Certes, pas beaucoup d'applications de console sont en C#, mais certains d'entre nous l'utilisent pour eux.C++ ">>" et "<<" IO en C#?
Je sais que Console.Read [Line] | Write [Line] et Streams | FileStream | StreamReader | StreamWriter ne fait pas partie de la question.
Je ne pense pas assez im spécifique
int a,b;
cin >> a >> b;
est incroyable !!
string input = Console.ReadLine();
string[] data = input.split(' ');
a = Convert.ToInt32(data[0]);
b = Convert.ToInt32(data[1]);
... assez long? De plus, il existe d'autres raisons pour lesquelles la solution C# est pire. Je dois obtenir la ligne entière ou faire mon propre tampon pour cela. Si la ligne sur laquelle je travaille est IDK, disons la ligne 1000 de Bells Triangle, je perds tellement de temps à tout lire en même temps.
EDIT: GAR !!!
OK LE PROBLÈME !!! Utilisation IntX pour faire un nombre énorme comme le .Net 4.0 BigInteger pour produire le triangle de la cloche
Si vous connaissez le triangle de la cloche, il devient énorme très très rapidement. Le but de cette question est que j'ai besoin de traiter chaque numéro individuellement. Si vous lisez une ligne entière, vous pouvez facilement cliquer sur Gigs of data. C'est un peu la même chose que les chiffres de Pi. Par exemple 42pow1048576 est 1,6 Mo! Je n'ai pas le temps ni la mémoire de lire tous les nombres comme une chaîne puis de choisir celui que je veux
Je ne vois pas quel est le problème. L'approche de C# est peut-être plus verbeuse, mais elle est beaucoup plus raisonnable, elle permet un contrôle beaucoup plus précis sur ce que vous faites, et facilite beaucoup le traitement des erreurs *. De plus, ce n'est pas une utilisation abusive d'un opérateur (le fait de passer outre un opérateur juste pour rendre les opérations d'E/S un peu plus faciles à taper est faux). –
Eh bien, vous pourriez commencer par fusionner les deux premières lignes: var data = Console.ReadLine(). Split (''); Ensuite, vous pouvez probablement ajouter ConvertAll() sur cela pour obtenir ints, mais je ne connais pas assez la syntaxe pour oser l'écrire ici. –
@Will Vousden: "C# offre un contrôle plus fin sur ce que vous faites"? Hum, je ne suis pas d'accord avec ça .. –