2016-10-16 7 views
0

В настоящее время у меня есть цикл вложенных циклов, после проверки значений он увеличивает каждый ref int внутри функции. То, что я пытаюсь сделать, - это ref ref reset to 0 после каждой итерации внутренний для цикла, но все, что я сделал, дал мне синтаксическую ошибку и задавался вопросом, могу ли я получить некоторую помощь.OCaml сброс значений int ref после цикла

for i = 0 to striL -1 do 
    for j = !tempH to !tempT do 
     countChar demoStri.[!tempH]; 
     if (!countA = !countC) && (!countC = !countG) && (!countG = !countT) then subStricount := !subStricount +1 
    done 
    let !countA = 0 
    let !countC = 0 
done 

Это то, что я в настоящее время и countChar это функция, которая просто проверяет строку для определенного полукокса и приращения каждого «счетчик» значение. а также то, что я пытаюсь сбросить в 0.

ответ

1

Чтобы установить ссылки на 0:

. . . 
done; 
countA := 0; 
countC := 0 

Примечание использований ;. Вы не можете просто написать одно выражение за другим, вам нужно разделить их на ;. (На самом деле два смежных выражения без разделителя представляют собой вызов функции.)