Я пытался узнать C из книги под названием C Programming Absolute Beginner's Guide, и я столкнулся с проблемой, и одна плохая вещь - вы не можете спросить книга вопрос! Набрал ошибку в Google и привел меня на этот сайт. Ошибка, которую я получаю, находится в заголовке вопроса, и это мой код.Ошибка: ожидаемые спецификаторы декларации или «...» перед '{' token
#include <stdio.h>
main(
{
//Set up the variables, as well as define a few
char firstInitial, middleInitial;
int number_of_pencils;
int number_of_notebooks;
float pencils = 0.23;
float notebooks = 2.89;
float lunchbox = 4.99;
//The information for the first child
firstInitial = 'J';
middleInitial = 'R';
number_of_pencils = 7;
number_of_notebooks = 4;
printf("%c%c needs %d pencils, %d notebooks, and 1 lunchbox\n",
firstInitial, middleInitial,number_of_pencils,
number_of_notebooks);
printf("The total cost is £%.2f\n\n", number_of_pencils*pencils + number_of_notebooks*notebooks + lunchbox);
//The information for the second child
firstInitial ='A';
middleInitial = 'J';
number_of_pencils = 10;
number_of_notebooks = 3;
printf("%c%c needs %d pencils, %d notebooks, and 1 lunchbox\n",
firstInitial, middleInitial,number_of_pencils,
number_of_notebooks);
printf("The total cost is £%.2f\n\n", number_of_pencils*pencills
+ number_of_notebooks*notebooks + lunchbox);
//The information for the third child
firstInitial = 'M';
middleInitial = 'T';
number_of_pencils = 9;
number_of_notebooks = 2;
printf("%c%c needs %d pencils, %d notebooks, and 1 lunchbox\n",
firstInitial, middleInitial,number_of_pencils,
number_of_notebooks);
printf("The total cost is £%.2f\n",
number_of_pencils8pencils + number_of_notebooks*notebooks + lunchbox);
return0;
}
)
Что не так с этим кодом?
Добро пожаловать на переполнение стека. Вскоре прочитайте страницу [О программе]. Если у вас есть ошибка компиляции, лучше всего включить точное сообщение об ошибке - за исключением того, что если имя файла является абсолютным путем длиной в милю, уменьшите имя до базового имени файла (так что измените '/ огромный/длинный/path/with/many/levels/of/directory/src/file.o' только для 'file.o'). Убедитесь, что источник, который вы показываете, и номера строк в нем соответствуют тому, что говорит компилятор. Если файл слишком длинный для удобства, создайте MCVE ([Как создать минимальный, полный и проверенный пример?] (Http://stackoverflow.com/help/mcve)) –
Я думаю, что последний символ ')' должен быть сразу после 'main (' so -> 'main()' Это делает трюк для вас? (BTW: 'return0;' -> 'return 0;') – Rizier123
Я посмотрел образец материала для книги, и (в главе 2) все примеры программ имеют 'main()', а не 'int main()' (или, как я бы предпочла, 'int main (void)'). Они включают в себя 'return 0; 'Это необходимо, поскольку они не используют нотации C99, которые позволяют исключить« return 0; »(хотя я тоже не люблю код, который делает это). Третье издание датировано 2014 годом, это немного беспокоит то, что первые программы не были написаны в текущем C около 15 лет. Мне не нравится его характеристика 'return',' while', 'int',' if', 'float' as 'commands' - они Ключевые слова! Осторожно! –