1
00:00:00,000 --> 00:00:00,560

2
00:00:00,560 --> 00:00:02,460
>> Дејвид Џ MALAN: Да го земеме работите
еден чекор понатаму, сега.

3
00:00:02,460 --> 00:00:05,450
Да претпоставиме дека јас не само сакаат
да се печати сите мои програмата

4
00:00:05,450 --> 00:00:06,630
командната линија аргументи.

5
00:00:06,630 --> 00:00:10,490
Но јас, наместо тоа, сакате да се печати сите
индивидуални карактери во секоја од

6
00:00:10,490 --> 00:00:14,060
мојата командната линија аргументи, по еден на
линија, така што по извршувањето на оваа

7
00:00:14,060 --> 00:00:17,490
програма, јас едноставно се види поток од
карактери на екранот што

8
00:00:17,490 --> 00:00:20,700
колективно се од мојот секвенца
на командната линија аргументи.

9
00:00:20,700 --> 00:00:21,980
>> Па, како можам да го направите ова?

10
00:00:21,980 --> 00:00:26,540
Јас може да ги задржи непроменети мојот циклус од пред
при што повторната од i до

11
00:00:26,540 --> 00:00:30,060
Argc, со цел да се интегрираат во текот на
командната линија се аргументи.

12
00:00:30,060 --> 00:00:34,460
Но сега, во рамките на секоја итерација на таа
јамка, јас треба да сега iterate преку секоја

13
00:00:34,460 --> 00:00:38,550
на карактери или знаци
во одредена низа.

14
00:00:38,550 --> 00:00:40,620
Па да го направите тоа, ми треба уште еден циклус.

15
00:00:40,620 --> 00:00:42,090
>> Ајде да додадам дека.

16
00:00:42,090 --> 00:00:46,890
за int, ајде да го наречеме ѕ, е еднаква на 0.

17
00:00:46,890 --> 00:00:49,980
Сега ќе одам да треба да се интегрираат
до должината на

18
00:00:49,980 --> 00:00:52,310
тековната низа во ARGV.

19
00:00:52,310 --> 00:00:55,910
Па да ми даде мене друга локална
променлива, ние ќе го наречеме n, и го постави

20
00:00:55,910 --> 00:01:00,120
дека еднаква на низа должина на
тековната расправија, која ќе биде

21
00:01:00,120 --> 00:01:04,230
се најде во ARGV заградата јас запирка.

22
00:01:04,230 --> 00:01:08,500
>> А сега допуштете ми iterate од ѕ до
до n проследено со

23
00:01:08,500 --> 00:01:10,400
прираст на секоја итерација.

24
00:01:10,400 --> 00:01:13,850
Ајде сега да печати на поединецот
карактери на екранот.

25
00:01:13,850 --> 00:01:21,920
Printf% c тоа време проследено со нови
линија, во близина понуда, запирка, а сега јас

26
00:01:21,920 --> 00:01:25,565
треба ѕ-та карактер
во i-тиот аргумент.

27
00:01:25,565 --> 00:01:30,240
>> Па да се добие во тоа, можам да едноставно
наведете АРВ заградата јас да

28
00:01:30,240 --> 00:01:32,050
добие на i-тиот аргумент.

29
00:01:32,050 --> 00:01:36,140
А потоа можам да се нурне во едно ниво подлабоко
и да направите средно индекс на

30
00:01:36,140 --> 00:01:40,420
заградата ѕ, во близина заграда,
запирка, Save.

31
00:01:40,420 --> 00:01:43,610
И ајде сега се компајлира и
ја извршите оваа програма.

32
00:01:43,610 --> 00:01:46,630
>> Направи ARGV2 -

33
00:01:46,630 --> 00:01:48,440
не сосема она што јас го очекував.

34
00:01:48,440 --> 00:01:50,740
Ајде да дојдете до првото
на овие пораки за грешка.

35
00:01:50,740 --> 00:01:54,540
И во црвено тука, ние гледаме на грешка,
имплицитно наведува библиотека функција

36
00:01:54,540 --> 00:01:56,290
strlen со тип -

37
00:01:56,290 --> 00:01:57,380
ох, почекајте една минута.

38
00:01:57,380 --> 00:02:00,340
Ова е прв пат сум се користи
strlen, и јас не очекуваат

39
00:02:00,340 --> 00:02:04,970
сакајќи го во прво време, па јас не вклучуваат
хедер датотека, кој се декларира

40
00:02:04,970 --> 00:02:06,290
низа должина функција.

41
00:02:06,290 --> 00:02:09,419
>> Па на врвот на мојата датотека,
потсетиме, имам CS50.h.

42
00:02:09,419 --> 00:02:11,080
Имам стандард io.h.

43
00:02:11,080 --> 00:02:14,500
Но излегува, и знам дека ова од
читање на документација, што ми треба

44
00:02:14,500 --> 00:02:18,320
една третина хедер датотека, ако јас, навистина,
сакате да го користите strlen функција.

45
00:02:18,320 --> 00:02:22,760
Таа функција е прогласена во string.h.

46
00:02:22,760 --> 00:02:25,230
>> Ајде resave датотека,
состави, и да ја стартувате.

47
00:02:25,230 --> 00:02:32,360

48
00:02:32,360 --> 00:02:35,570
И овој пат, тоа го правиме не само
види едни од аргументите.

49
00:02:35,570 --> 00:02:40,470
Ние наместо да се види секој од аргументите
еден карактер во исто време.

50
00:02:40,470 --> 00:02:43,165