Thursday, August 18, 2016

Arg - max 32






+

Verwenden Sie eine temporäre Datei und den Dateinamen senden. Denken Sie daran, beide Seiten sollten die Datei zu schließen, da die Datei-Handle Referenz gezählt . Nachrichten: 2f ************************** @ posting. google. c om. berücksichtigen: int main (int argc, char * argv []) In exec (2); Deren Argumente, die zur Haupt weitergegeben werden. Was ist die maximale Größe der Zeichenfolge. argv [1] = Wie lange argv kann [1] weisen auf. obwohl ich argv [i] wissen, ist 4 Byte-Zeiger. Wie lange kann die Zeichenfolge. Ich möchte nur ein 50K-String als meinen Prozess Argumente zu senden (Haupt des args), wenn ich fork und exec. Ist es möglich. Sagt Standard etwas zu diesem Thema. Gibt es Einschränkungen. Grüße, James - Samba, mehr als ein Low-Cost Datei - und Druckerserver - Uns Opensource Let - ----- = Posted über Newsfeeds, Uncensored Usenet News = ----- Newsfeed - Die # 1 Newsgroup-Service in der Welt! ----- == Über 100.000 Newsgroups - 19 verschiedenen Servern! = ----- James schrieb: betrachten: int main (int argc, char * argv []) In exec (2); Deren Argumente, die zur Haupt weitergegeben werden. Was ist die maximale Größe der Zeichenfolge. argv [1] = Wie lange argv kann [1] weisen auf. obwohl ich argv [i] wissen, ist 4 Byte-Zeiger. Wie lange kann die Zeichenfolge. Ich möchte nur ein 50K-String als meinen Prozess Argumente zu senden (Haupt des args), wenn ich fork und exec. Ist es möglich. Sagt Standard etwas zu diesem Thema. Gibt es Einschränkungen. Wie genau würden Sie präsentieren ein 50K Argument für Ihr Programm? Das Konzept ist ein wenig bizarr. Die Dinge, die normalerweise durch die char * argv [] Konstrukt geben werden Dateinamen und Optionen. Daten, die durch das Programm verarbeitet werden, wird in der Regel in Dateien oder anderen Strömen rangierbar die das Programm wird durch den I / O-System. besser gesagt die 50K in einer Datei und übergeben Sie den Namen der Datei in Ihrem Programm oder übergeben Sie die Inhalte der Datei, um das Programm durch ein Rohr zu stdin. - Joe Wright mailto: jo ******** @ comcast --- Albert Einstein --- Am 1. September 2004 09.02.41 -0700, Ch ******* @ aol (Mark R. Bannister) schrieb in comp. lang. c: Je *********** @ physik. fu-berlin. de schrieb im Newsbeitrag news: Wie lange argv kann [1] weisen auf. obwohl ich argv [i] wissen, ist 4 Byte-Zeiger. Wie lange kann die Zeichenfolge. Ich möchte nur ein 50K-String als meinen Prozess Argumente zu senden (Haupt des args), wenn ich fork und exec. Ist es möglich. Sagt Standard etwas zu diesem Thema. Gibt es Einschränkungen. Soweit ich das beurteilen kann, ist es nicht erforderlich, für die Größe der in der C-Standard (und ich kann keinen guten Grund, warum der Standard sollte eine Obergrenze erforderlich). Auf der anderen Seite, wird das Betriebssystem wahrscheinlich eine Grenze für die maximale Größe setzen. Z. B. den POSIX-Standard SUSv3 erfordert, dass argv mindestens 4096 Bytes (viel mehr, aber viele Unix-Varianten erlauben) verwenden können. Es ist keine Begrenzung für die Länge eines einzelnen Arguments, nur auf der Länge des gesamten Argument Linie hat die ARG_MAX Begrenzung auferlegt, in limits. h definiert. Im Folgenden macht einen interessanten Vergleich zu der Größe von ARG_MAX über verschiedene Systeme: Vielleicht haben Sie Sie in comp. unix. programmer reagierten und nicht comp. lang. c. Nach der C-Standard wird eine konforme Compiler kein Makro in zu definieren, erlaubt. nur der Sprache C, POSIX nicht hier, bitte. ga*****@yin. interaccess (Kenny McCormack) schreibt: In Artikel schrieb: Wie genau würden Sie ein 50K Argument zu Ihrem Programm präsentieren? Die kurze Antwort lautet: ls * Das stellt viele kleinere Argumente, die nicht genau das, was die OP über bat. Ich denke, dass ein einzelnes 50k Argument wäre sehr ungewöhnlich. Äh, es ist die Gesamtgröße (die Summe aller args Längen), was zählt. Das Original-Poster über die maximale Größe der Zeichenfolge aufgefordert, auf den argv [1]. Alle Grenzen Argument Größe sind systemspezifisch und Off-Topic für comp. lang. c. comp. unix. programer ist wahrscheinlich ein guter Ort, um zu fragen. - Keith Thompson (The_Other_Keith) ks***@mib. org ghoti / kstusers. sdsc. edu/ jl Wir müssen etwas tun. Das ist etwas. Deshalb müssen wir dies tun. Richard Tobin hat geschrieben: Wie genau würden Sie ein 50K Argument zu Ihrem Programm präsentieren? Die kurze Antwort lautet: ls * Das stellt viele kleinere Argumente, die nicht genau das, was die OP über bat. Ich denke, dass ein einzelnes 50k Argument wäre sehr ungewöhnlich. Ungewöhnlich, ja. Ein Zeichen für schlechte Programmierung / Planung, wahrscheinlich. Immer vermeidbar in jedem realen Fall, wahrscheinlich. Aber dennoch: awk Ja ja, wäre wahrscheinlich eine bessere Lösung für die OP sein: die Größenbeschränkungen des Dateisystems sind wahrscheinlich viel größer sein als die Grenzen der Kommandozeile (und Umgebungsvariablen). Jack Klein, wenn ich fork und exec. Ist es möglich. Sagt Standard etwas zu diesem Thema. Gibt es Einschränkungen. Soweit ich das beurteilen kann, ist es nicht erforderlich, für die Größe der in der C-Standard (und ich kann keinen guten Grund, warum der Standard sollte eine Obergrenze erforderlich). Auf der anderen Seite, wird das Betriebssystem wahrscheinlich eine Grenze für die maximale Größe setzen. Z. B. den POSIX-Standard SUSv3 erfordert, dass argv mindestens 4096 Bytes (viel mehr, aber viele Unix-Varianten erlauben) verwenden können. Es ist keine Begrenzung für die Länge eines einzelnen Arguments, nur auf der Länge des gesamten Argument Linie hat die ARG_MAX Begrenzung auferlegt, in limits. h definiert. Im Folgenden macht einen interessanten Vergleich zu der Größe von ARG_MAX über verschiedene Systeme: Vielleicht haben Sie Sie in comp. unix. programmer reagierten und nicht comp. lang. c. Nach der C-Standard wird eine konforme Compiler kein Makro in zu definieren, erlaubt. nur der Sprache C, POSIX nicht hier, bitte. Nun entschuldigen Sie mich für eine reale Welt Antwort zu geben. In Artikel schrieb. Nun entschuldigen Sie mich für eine reale Welt Antwort zu geben. Die reale Welt ist hier OT. Ich dachte, Sie zu verstehen, dass jetzt. Ch ******* @ aol (Mark R. Bannister) schreibt: Jack Klein. nur der Sprache C, POSIX nicht hier, bitte. Nun entschuldigen Sie mich für eine reale Welt Antwort zu geben. Welche realen Welt wäre das? Es gibt viele Systeme der realen Welt, die C, aber nicht POSIX unterstützen, und es gibt Newsgroups, wo POSIX aktuell. - Keith Thompson (The_Other_Keith) ks***@mib. org ghoti / kstusers. sdsc. edu/ jl Wir müssen etwas tun. Das ist etwas. Deshalb müssen wir dies tun. Diese Diskussion wird geschlossen Antworten wurden für diese Diskussion deaktiviert. Ähnliche Themen Frage Statistiken angesehen: 2887 antwortet: 13 Datum gefragt: 14. November '05


recherchermonsenbaroeulh.blogspot.com


No comments:

Post a Comment