Я не могу найти причину моей последней оставшейся ошибки.К сожалению, у меня нет настоящих друзей-разработчиков, которых я мог бы попросить о быстрой помощи, поэтому создание этого поста было моим единственным вариантом.
указана ошибка 57:13: ошибка: ожидаемое выражение еще ^
Может кто-нибудь проверить мой код и намекнуть мне на проблему?
#include <stdio.h>
#include <cs50.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
int main(int argc, string argv[])
{
// make sure command line input correct.
if (argc != 2)
{
printf("Command line arguments can't be greater or lower then 2\n");
return 1;
}
// get a valid key = key
string key = (argv[1]);
int lengthK = strlen(key);
for (int i = 0; i < lengthK; i++)
{
if (!isalpha(key))
printf("Key must be alphabetical \n");
return 1;
}
//get plaintext
string(plaintext) = get_string("Plaintext : ");
//convert plaintext and keeping upper/lowercase in mind
int i;
int lengthP;
int index;
printf("ciphertext: ");
for (i = 0, index = 0, lengthP = strlen(plaintext); i < lengthP; i++)
{
if (isalpha(plaintext[i]))
{
//change uppercase letters
if (isupper(plaintext[i]))
{
printf("%c", (((plaintext[i] - 'A') + toupper(key[index]) - 'A') % 26) + 'A');
}
//change lowercase letters
if (islower(plaintext[i]))
{
printf("%c", (((plaintext[i] - 'a') + key[index] - 'A') % 26) + 'a');
}
index = (index + 1) % lengthK;
//rest
else
{
printf("%c", (plaintext[i]));
}
}
}
printf("\n");
}