1 00:00:00,000 --> 00:00:02,480 >> [సంగీతాన్ని] 2 00:00:02,480 --> 00:00:06,460 3 00:00:06,460 --> 00:00:09,350 >> డౌ LLOYD: అన్ని కుడి, కాబట్టి లెట్స్ ఆదేశ పంక్తి వాదనలు గురించి మాట్లాడటానికి. 4 00:00:09,350 --> 00:00:11,800 సో, ఇప్పటివరకు కోర్సులో అందంగా మీ కార్యక్రమాలు చాలా అన్ని 5 00:00:11,800 --> 00:00:16,360 బహుశా ప్రారంభించారు దీన్ని Int ప్రధాన శూన్యమైన వంటి. 6 00:00:16,360 --> 00:00:18,310 మేము సేకరిస్తూ చేసిన వినియోగదారు ఇన్పుట్ మేము ఇది అవసరం ఉంటే 7 00:00:18,310 --> 00:00:21,080 వంటి మా ప్రోగ్రామ్స్, మారియో కార్యక్రమం, ఉదాహరణకు, 8 00:00:21,080 --> 00:00:22,990 లో-ప్రోగ్రామ్ అడుగును ద్వారా. 9 00:00:22,990 --> 00:00:25,190 మేము సవరించడానికి అవసరమైన లేదు ప్రధాన ప్రకటించడం 10 00:00:25,190 --> 00:00:30,684 ఎందుకంటే బదులుగా ప్రధాన మేము లోపలి కేవలం మీరు Int పొందుటకు కాల్ చేస్తామన్నారు. 11 00:00:30,684 --> 00:00:32,350 ఎలా పెద్ద మీరు పిరమిడ్ ఉండాలనుకుంటున్నాను లేదు? 12 00:00:32,350 --> 00:00:34,455 లేదా మీరు పొందుటకు అది పిలవాలని ఎంత మార్పు ఫ్లోట్ 13 00:00:34,455 --> 00:00:36,400 వినియోగదారుకు నేను అవుట్పుట్ చేయాలి? 14 00:00:36,400 --> 00:00:38,630 >> మరొక మార్గం, అయితే ఉంది మరియు మేము మా వినియోగదారులు అనుకుంటే 15 00:00:38,630 --> 00:00:40,580 అందించడానికి చేయగలరు మా కార్యక్రమం డేటా 16 00:00:40,580 --> 00:00:43,320 బదులుగా అయితే నడుస్తున్న సమయంలో కార్యక్రమం అమలవుతున్న 17 00:00:43,320 --> 00:00:45,910 ఒక సూక్ష్మ వ్యత్యాసం కానీ కొన్నిసార్లు చాలా ఉపయోగకరమైన ఒకటి, 18 00:00:45,910 --> 00:00:48,120 మేము ప్రధాన ప్రకటించే ఒక కొత్త రూపం అవసరం. 19 00:00:48,120 --> 00:00:53,320 మేము అనుకుంటే Int ప్రధాన శూన్యమైన ఉపయోగించలేరు కమాండ్ లైన్ వద్ద ఇతర డేటా సేకరించడానికి 20 00:00:53,320 --> 00:00:57,540 వినియోగదారు ప్రోగ్రామ్ నడుస్తుంది ఉన్నప్పుడు, అందుకే ఆదేశ పంక్తి వాదనలు. 21 00:00:57,540 --> 00:00:59,810 >> ఈ ఆదేశ పంక్తి సేకరించడానికి యూజర్ నుంచి వాదన, 22 00:00:59,810 --> 00:01:03,140 మీ డిక్లరేషన్ను మార్పు దీన్ని పూర్ణాంకానికి లాగా ప్రధాన 23 00:01:03,140 --> 00:01:10,450 ప్రధాన ఓపెన్ బ్రాకెట్, Int argc, కామా స్ట్రింగ్ argv, చదరపు బ్రాకెట్లలో, 24 00:01:10,450 --> 00:01:12,670 ఆపై వంకర కలుపు తెరవండి. 25 00:01:12,670 --> 00:01:14,415 తద్వారా ఇప్పటికే అర్థం ఏమిటి? 26 00:01:14,415 --> 00:01:19,410 Well, మేము రెండు పారామితులు లో ప్రయాణిస్తున్న, ప్రధాన లేదా వాదనలు, లేదా ఇన్పుట్లను. 27 00:01:19,410 --> 00:01:23,800 వన్ అనే ఒక పూర్ణాంకం అని argc, మరియు ఇతర ఏమిటి? 28 00:01:23,800 --> 00:01:26,430 29 00:01:26,430 --> 00:01:29,640 ఇది కుడి, తీగలను యొక్క వ్యూహం ఉంది? 30 00:01:29,640 --> 00:01:31,140 మేము ఆ చదరపు బ్రాకెట్ సంజ్ఞామానం చూడడానికి. 31 00:01:31,140 --> 00:01:32,181 ఇది తీగలను యొక్క వ్యూహం ఉంది. 32 00:01:32,181 --> 00:01:35,110 ఇది ఒక వ్యక్తి స్ట్రింగ్ కాదు, అది తీగలను యొక్క వ్యూహం ఉంది. 33 00:01:35,110 --> 00:01:39,640 మరియు ఈ రెండు వాదనలు, argc మరియు argv, ఏమి డేటా వినియోగదారు తెలుసు మీరు ప్రారంభించినా 34 00:01:39,640 --> 00:01:42,912 కమాండ్ లైన్ వద్ద అందించారు మరియు ఎన్ని విషయాలు వారు 35 00:01:42,912 --> 00:01:44,120 కమాండ్ లైన్ వద్ద అందించబడింది. 36 00:01:44,120 --> 00:01:46,570 పని ప్రెట్టీ ఉపయోగకరమైన విషయాలు. 37 00:01:46,570 --> 00:01:50,310 >> Argc వాదన లెక్కింపు కోసం నిలుచునే మరియు మీరు మార్గం ద్వారా, తెలిసిన ఉండాలి, 38 00:01:50,310 --> 00:01:52,600 మీరు argc కాల్ అని మీరు కావలసిన సంసార. 39 00:01:52,600 --> 00:01:54,710 మీరు నచ్చినట్టు argv కాల్ చేయవచ్చు. 40 00:01:54,710 --> 00:01:58,740 ఈ కేవలం సంప్రదాయ పేర్లు మేము them-- వాదన లెక్కింపు కోసం ఉపయోగించే, 41 00:01:58,740 --> 00:02:00,907 మరియు మేము రెండవ లో చూస్తారు వంటి, వాదన వెక్టర్, argv. 42 00:02:00,907 --> 00:02:03,698 కానీ మీరు వాటిని కాల్ లేదు మీరు కావలసిన లేకపోతే argc మరియు argv, 43 00:02:03,698 --> 00:02:05,570 కానీ సంప్రదాయకంగా, మేము ఏమి ఉంది. 44 00:02:05,570 --> 00:02:07,500 >> సో ఏమైనప్పటికీ, argc వాదన లెక్కింపు. 45 00:02:07,500 --> 00:02:11,569 అది ఒక పూర్ణాంకం రకం వేరియబుల్ మరియు కాబట్టి, మేము రెండు విషయాలను కలిగి ఉంటే మీరు ఆశించవచ్చు 46 00:02:11,569 --> 00:02:13,860 మేము కనుగొనడంలో కావడం చేస్తున్న ఈ టైప్ ఏమిటో 47 00:02:13,860 --> 00:02:16,070 మరియు ఎంత stuff వినియోగదారు టైప్, argc ఉంది 48 00:02:16,070 --> 00:02:18,559 ఎంత మీరెప్పుడూ టైప్ యూజర్ విషయం. 49 00:02:18,559 --> 00:02:20,850 మీరు అనేక ఇచ్చే కాబట్టి ఆదేశ పంక్తి వాదనలు యూజర్ 50 00:02:20,850 --> 00:02:22,470 ప్రోగ్రామ్ అమలు చేసినప్పుడు టైప్. 51 00:02:22,470 --> 00:02:25,780 మీ కార్యక్రమాన్ని చేస్తే డాట్ అత్యాశ స్లాష్ అమలు, 52 00:02:25,780 --> 00:02:28,670 మరియు మీ అత్యాశ లోపలి మీ ప్రధాన విధి ప్రోగ్రామ్ 53 00:02:28,670 --> 00:02:34,800 ప్రకటన Int ప్రధాన Int argc, ఉంది, స్ట్రింగ్ అప్పుడు, చదరపు బ్రాకెట్లలో argv 54 00:02:34,800 --> 00:02:37,950 ఆ సందర్భంలో argc ఒకటి. 55 00:02:37,950 --> 00:02:40,200 ఇప్పుడు మేము లేదు గమనించవచ్చు ఎన్ని విషయాలు లెక్కించడానికి 56 00:02:40,200 --> 00:02:42,590 వినియోగదారు ప్రోగ్రామ్ పేరు తర్వాత టైప్. 57 00:02:42,590 --> 00:02:46,710 కార్యక్రమం పేరు కూడా గణనలు ఒక కమాండ్ లైన్ వాదన గా. 58 00:02:46,710 --> 00:02:51,770 >> కాబట్టి, అత్యాశ స్లాష్ డాట్ ఆ సందర్భంలో, argc ఒకటి. 59 00:02:51,770 --> 00:02:57,910 యూజర్ స్లాష్ అత్యాశ 1024 CS50 టైప్ ఉంటే ఆ సందర్భంలో argc కమాండ్-లైన్ వద్ద 60 00:02:57,910 --> 00:02:59,520 మూడు ఉంటుంది. 61 00:02:59,520 --> 00:03:03,720 మరియు మేము మార్గం ఎందుకంటే నేను ఈ తెలుసు ఆ తీగలను మధ్య విభజన 62 00:03:03,720 --> 00:03:06,030 అనే ఉంది ఎదురయినపుడు ఒక స్థలం, లేదా ఒక టాబ్ ఉంది, 63 00:03:06,030 --> 00:03:08,230 లేదా వాటి మధ్య అలాంటిదే. 64 00:03:08,230 --> 00:03:13,860 సో వైట్ స్పేస్ ఏ మొత్తం, అని పిలవబడే, విలువల మధ్య కమాండ్-లైన్ టైప్ 65 00:03:13,860 --> 00:03:15,720 ఎన్ని సూచిస్తుంది. 66 00:03:15,720 --> 00:03:24,040 కాబట్టి అత్యాశ స్పేస్ 1024 స్పేస్ స్లాష్ డాట్ CS50, argc, ఆ సందర్భంలో, మూడు. 67 00:03:24,040 --> 00:03:26,600 >> Argv వాదన వెక్టర్ ఉంది. 68 00:03:26,600 --> 00:03:29,240 వెక్టర్, మార్గం ద్వారా, కేవలం ఉంది వ్యూహం కోసం మరొక పదం, 69 00:03:29,240 --> 00:03:31,510 మరియు ఈ ఒక శ్రేణి ఆ తీగలను నిల్వ. 70 00:03:31,510 --> 00:03:35,540 ఇది మూలకం ఒకొక్క స్ట్రింగ్, తీగలను ఆ యూజర్ వాస్తవానికి 71 00:03:35,540 --> 00:03:39,230 కమాండ్ లైన్ వద్ద టైప్ ప్రోగ్రామ్ అమలు చేసినప్పుడు. 72 00:03:39,230 --> 00:03:40,990 ఇప్పుడు, సందర్భంలో ఏ వ్యూహం తో, మీరు ఉంటే 73 00:03:40,990 --> 00:03:44,380 మా చర్చ నుండి గుర్తు శ్రేణులను argv యొక్క మొదటి మూలకం 74 00:03:44,380 --> 00:03:49,150 ఎల్లప్పుడూ చూడవచ్చు అన్నారు argv చదరపు బ్రాకెట్ సున్నా వద్ద. 75 00:03:49,150 --> 00:03:51,800 మొదటి ఇండెక్స్ వార్తలు argv శ్రేణి యొక్క. 76 00:03:51,800 --> 00:03:55,720 కాబట్టి అభీష్టం మరియు నిజానికి, ఆ సంకల్పం ఎల్లప్పుడూ కార్యక్రమం యొక్క పేరు, 77 00:03:55,720 --> 00:03:59,730 ఎల్లప్పుడూ వద్ద ఉన్న argv చదరపు బ్రాకెట్ సున్నా. 78 00:03:59,730 --> 00:04:08,590 >> Argv చివరి మూలకం ఎల్లప్పుడూ కనుగొనబడింది argv చదరపు బ్రాకెట్లలో argc మైనస్ ఒకటి వద్ద. 79 00:04:08,590 --> 00:04:10,300 మీరు ఎందుకు చూస్తారు? 80 00:04:10,300 --> 00:04:14,180 ఎన్ని అంశాలు గుర్తుంచుకో ఈ శ్రేణి ఉన్నాయి. 81 00:04:14,180 --> 00:04:16,660 Well, మేము అది ఆ తెలుసు అంశాల argc సంఖ్య. 82 00:04:16,660 --> 00:04:21,279 యూజర్ వద్ద మూడు విషయాలు టైప్ ఉంటే కమాండ్ లైన్, argc మూడు ఉంది. 83 00:04:21,279 --> 00:04:27,070 కానీ ఎందుకంటే c లో, మేము పని చేస్తున్నాము శ్రేణితో, అర్రే ప్రతి మూలకం, 84 00:04:27,070 --> 00:04:30,190 లేదా కాకుండా సూచీలు అర్రే, సున్నా వద్ద ప్రారంభించండి. 85 00:04:30,190 --> 00:04:34,000 మేము మూడు అంశాలు కలిగి ఉంటే మా అర్రే, మేము argv సున్నా వద్ద ఒక మూలకం కలిగి 86 00:04:34,000 --> 00:04:37,930 argv ఒక వద్ద ఒక మూలకం, argv రెండు వద్ద మరియు ఒక మూలకం. 87 00:04:37,930 --> 00:04:41,700 Argv వద్ద మూలకం ఉంది మూడు, మరియు పరిమాణం మూడు వ్యూహం. 88 00:04:41,700 --> 00:04:43,990 సో ఎందుకు ఆఖరి argv యొక్క మూలకం ఎల్లప్పుడూ చెయ్యవచ్చు 89 00:04:43,990 --> 00:04:49,510 argv చదరపు వద్ద చూడవచ్చు బ్రాకెట్లలో argc మైనస్ ఒకటి. 90 00:04:49,510 --> 00:04:52,420 >> కాబట్టి యొక్క వినియోగదారు అమలు చేపట్టడానికి వీలు ఈ క్రింది విధంగా అత్యాశ కార్యక్రమం 91 00:04:52,420 --> 00:04:57,970 వారు కమాండ్-లైన్ డాట్ టైప్ ఉంటే అత్యాశ స్పేస్ 1024 స్పేస్ CS50 స్లాష్ 92 00:04:57,970 --> 00:05:00,720 మరియు కారణము ఏదైనప్పటికీ మేము చేసిన ఇప్పటికే మన అత్యాశ కార్యక్రమం సిద్ధం 93 00:05:00,720 --> 00:05:04,050 తెలిసిన మరియు ఈ పని ఆదేశ పంక్తి వాదనలు. 94 00:05:04,050 --> 00:05:07,030 మేము పని చేసినప్పుడు మేము గతంలో జరగలేదు అత్యాశ సమస్య కోసం, అది న 95 00:05:07,030 --> 00:05:09,660 కానీ లెట్స్ మేము ఇప్పుడు చివరి మార్పు చేసాను అని పిలవబడు ఆ విధంగా మేము ప్రక్రియ 96 00:05:09,660 --> 00:05:11,480 కొన్ని విధంగా ఆదేశ పంక్తి వాదనలు. 97 00:05:11,480 --> 00:05:15,720 ఈ సందర్భంలో, సున్నా argv డాట్ స్లాష్ అత్యాశ. 98 00:05:15,720 --> 00:05:17,042 Argv ఒక ఏమిటి? 99 00:05:17,042 --> 00:05:19,030 సరే, కుడి, 1024 వార్తలు? 100 00:05:19,030 --> 00:05:22,620 ఇది 1024 ఉంది, కానీ ఇక్కడ ఒక వార్తలు నిజంగా ముఖ్యమైన distinction-- 101 00:05:22,620 --> 00:05:26,410 మీరు argv యొక్క డేటా రకం గుర్తు లేదా? 102 00:05:26,410 --> 00:05:31,020 >> ఇది కుడి, తీగలను నిల్వ? 103 00:05:31,020 --> 00:05:34,140 కానీ అది 1024 కనిపిస్తోంది పూర్ణాంకం విలువ. 104 00:05:34,140 --> 00:05:36,530 ఈ ఒక నిజంగా ముఖ్యం వ్యత్యాసం, మరియు నిజానికి 105 00:05:36,530 --> 00:05:40,200 ఏదో మారింది చేస్తాడు మీరు తరువాత సమస్యలు ఎదుర్కొనే. 106 00:05:40,200 --> 00:05:43,770 Argv ప్రతిదీ ఉంది ఒక స్ట్రింగ్ వలె నిల్వ చేయబడుతుంది. 107 00:05:43,770 --> 00:05:48,775 అందువల్ల argv ఒకరి విషయాలను స్ట్రింగ్ ఒకటి, సున్నా, రెండు, నాలుగు, 108 00:05:48,775 --> 00:05:50,275 ఆ నాలుగు అక్షరాలు ఉంటాయి. 109 00:05:50,275 --> 00:05:53,870 ఇది వినియోగదారు టైప్ వార్తలు ఒకటి, సున్నా, రెండు, నాలుగు 110 00:05:53,870 --> 00:05:56,680 వ్యక్తిగత అక్షరాలు లేదా అక్షరాలు వంటి. 111 00:05:56,680 --> 00:06:00,730 ఇది పూర్ణాంక 1024 కాదు అందువలన మీరు నేరుగా కాదు 112 00:06:00,730 --> 00:06:11,580 పూర్ణాంకానికి 1,000 చెప్పి అది పని, లేదా కాకుండా Int x argv ఒక మైనస్ 24 సమానం. 113 00:06:11,580 --> 00:06:15,550 >> అకారణంగా, మీరు ఆ అనుకుంటున్నాను ఉండవచ్చు సరే, బాగా 1,024 మైనస్ 24 వార్తలు, వంటి 114 00:06:15,550 --> 00:06:17,920 కాబట్టి x 1,000 సమానం. 115 00:06:17,920 --> 00:06:22,020 కానీ నిజానికి, ఆ సందర్భంలో కాదు argv ఒక స్ట్రింగ్ ఎందుకంటే. 116 00:06:22,020 --> 00:06:23,940 స్ట్రింగ్ 1024. 117 00:06:23,940 --> 00:06:28,739 ఇప్పుడు ఒక ఫంక్షన్ ఉంది పూర్ణాంకాల తీగలను మార్చేందుకు ఉపయోగిస్తారు. 118 00:06:28,739 --> 00:06:30,780 నేను మీరు దానిని పాడు కాదు ఇప్పుడు, కానీ నేను Zamyla ఖచ్చితంగా ఉన్నాను 119 00:06:30,780 --> 00:06:34,380 దాని గురించి మీరు చెప్పడం ఆనందంగా ఉంటుంది భవిష్య సమస్య కోసం రిహార్సల్. 120 00:06:34,380 --> 00:06:36,390 కానీ మీరు కూడా వెదుక్కోవచ్చు సమస్యలు వంటి ఫంక్షన్ అవసరం లేదు 121 00:06:36,390 --> 00:06:39,921 నాకు, విధులు అని సూచన -50 దీన్ని, 122 00:06:39,921 --> 00:06:42,462 మీరు సూచన మార్గదర్శిని వెళ్ళండి ఉంటే మీరు ఒక ఫంక్షన్ పొందవచ్చు 123 00:06:42,462 --> 00:06:43,820 మీరు ఈ మార్పిడి చేస్తుంది. 124 00:06:43,820 --> 00:06:45,980 కానీ మళ్ళీ, నడకను భవిష్య సమస్య కోసం, 125 00:06:45,980 --> 00:06:48,290 Zamyla సంతోషంగా ఉంటుంది ఏమి ఫంక్షన్ మీరు చెప్పండి 126 00:06:48,290 --> 00:06:53,280 ఆ మారిపోతుంది ఉంది పూర్ణాంక 1024 స్ట్రింగ్ 1024. 127 00:06:53,280 --> 00:06:54,560 >> All right, కాబట్టి వెళ్ళేముందు. 128 00:06:54,560 --> 00:06:56,726 మేము మా argv సున్నా కవర్ చేసిన మేము ఒక argv కవర్ చేసిన. 129 00:06:56,726 --> 00:06:58,000 ఏ argv రెండు వార్తలు? 130 00:06:58,000 --> 00:06:58,620 CS50. 131 00:06:58,620 --> 00:07:01,350 ఆ బహుశా వార్తలు అందంగా స్వీయ వివరణాత్మక. 132 00:07:01,350 --> 00:07:02,950 ఏ argv మూడు వార్తలు? 133 00:07:02,950 --> 00:07:04,970 బాగా మళ్ళీ, మేము నిజంగా తెలియదు, కుడి? 134 00:07:04,970 --> 00:07:08,060 మేము పరిమాణం మూడు వ్యూహం కలిగి ఎన్ని అంశాలు యూజర్ వార్తలు 135 00:07:08,060 --> 00:07:11,610 కమాండ్ లైన్ వద్ద టైప్, కాబట్టి మేము మూడు argv వెళ్ళండి ఉంటే, 136 00:07:11,610 --> 00:07:14,660 మేము ఇప్పుడు ఎక్కువ చొచ్చుకుని రావడము చేస్తున్నారు మా శ్రేణి యొక్క సరిహద్దులు. 137 00:07:14,660 --> 00:07:18,570 కంపైలర్, మాకు ఈ తెలియజేసేలా కనిపిస్తుంది ఏ సహజమైన సమస్య అది తో ఉంది, 138 00:07:18,570 --> 00:07:22,890 కానీ నిజానికి పరంగా ఏమి జరగబోతోంది జరిగే, మేము నిజంగా తెలియదు. 139 00:07:22,890 --> 00:07:25,380 అది ఏమిటో ఆధారపడి మెమరీ పేరు ఉన్న 140 00:07:25,380 --> 00:07:28,060 argv మూడు భావిస్తున్నారు. 141 00:07:28,060 --> 00:07:30,716 కాబట్టి మేము ముగించవచ్చు దూరంగా వరి ఉచిత పొందడం. 142 00:07:30,716 --> 00:07:33,840 ఎక్కువగా కానప్పటికీ, ముఖ్యంగా వ్యతిరేకంగా మీరు argv పని చేస్తున్న 143 00:07:33,840 --> 00:07:35,548 ఏ ఇతర శ్రేణి ఆ మా కార్యక్రమంలో వార్తలు 144 00:07:35,548 --> 00:07:38,660 మేము బహుశా బాధలు చూడాలని విభజన లోపంగా. మరలా, 145 00:07:38,660 --> 00:07:42,756 హద్దులు overstep ఖచ్చితంగా కాదు మీ శ్రేణుల యొక్క ముఖ్యంగా argv, 146 00:07:42,756 --> 00:07:47,170 దాని యొక్క అధిక డిగ్రీ ఇచ్చిన మీ కార్యక్రమాలలో ప్రాముఖ్యత. 147 00:07:47,170 --> 00:07:48,100 >> నేను డౌ లాయిడ్ ఉన్నాను. 148 00:07:48,100 --> 00:07:50,170 ఈ CS50 ఉంది. 149 00:07:50,170 --> 00:07:51,457