Бит C noob и особенно shell noob, так что извините за это. У меня есть задание, где я должен прочитать строку из сценария оболочки и ввести ее в программу c с помощью stdin. Проф дает нам уже написанный скрипт, и строки начинаются с << EOF и заканчиваются EOF. Я понятия не имею, как обработать эту строку в моей программе. Спасибо за помощь. </p>
Программа c:
#include<stdio.h>
int main(int argc, char * argv[]){
int i = 0, aCount = 0, eCount = 0, iCount = 0, oCount = 0, uCount = 0;
while(argv[1][i] != EOF){
if(argv[1][i] == 'A' || argv[1][i] == 'a'){
aCount++;
}
if(argv[1][i] == 'E' || argv[1][i] == 'e'){
eCount++;
}
if(argv[1][i] == 'I' || argv[1][i] == 'i'){
iCount++;
}
if(argv[1][i] == 'O' || argv[1][i] == 'o'){
oCount++;
}
if(argv[1][i] == 'U' || argv[1][i] == 'u'){
uCount++;
}
i++;
}
printf("%s%d\n", "Number of A's: ", aCount);
printf("%s%d\n", "Number of E's: ", eCount);
printf("%s%d\n", "Number of I's: ", iCount);
printf("%s%d\n", "Number of O's: ", oCount);
printf("%s%d\n", "Number of U's: ", uCount);
return 0;
}
Сценарий:
run () {
echo "$*"
if $*
then echo 'success'
else echo 'error'
fi
}
run ./count_vowels <<EOF
Adieu, Bo!
EOF