Простымі словамі, у чым розніца паміж «Дэкларацыяй» і «Вызначэннем» у С для нованароджаных?
адказ 1:
У кантэксце мовы С дэкларацыя спасылаецца на перадачу кампілятару імя, тыпу і подпісу функцый ці метадаў.
Напрыклад:
/ * Функцыянальнае тлумачэнне * / FooBar (спіс аргументаў з тыпам дадзеных);
Тут мы бачым, што ён заканчваецца кропкай з коскай і ўяўляе сабой аднарадковы код, які ўказвае толькі імя кампілятара, аргумент і тып вяртання функцыі.
Вызначэнне складаецца ў вызначэнні фактычнага зместу (асноўнай часткі) гэтай функцыі. Які змяшчае ўсе коды і логіку і ўсё, што апісвае, якую функцыю на самай справе выконвае.
Напрыклад:
/ * Вызначэнне функцыі * / FooBar (спіс аргументаў з тыпам дадзеных) {/ * Дэкларацыя мясцовай зменнай * / / * Радкі кода, якія ўтрымліваюць фактычную логіку праграмы * / return ; }
У C дэкларацыя павінна быць зроблена перад выкарыстаннем гэтай функцыі, каб кампілятар не выклікаў памылку, калі вызначэнне функцыі можа быць у бягучай вобласці праграмы.
Вялікі дзякуй
адказ 2:
Дэкларацыя загадзя інфармуе кампілятар пра тып, памер зменных і параметры, тып вяртання функцыі.
Падчас дэкларавання не адбываецца размеркаванне памяці.
Прыклад: int j;
Вызначэнне: ён вызначае, што робіць гэтая зменная / функцыя, якое значэнне яна будзе прымаць. Фактычнае размеркаванне памяці адбываецца ў залежнасці ад вызначэння.
Прыклад: j = 3;
адказ 3:
Абвяшчэнне якраз і заключаецца ў тым, што ён распавядае кампілятару, каб потым знайсці вызначэнне ў зыходным кодзе. Звычайна гэта ў загалоўку (пашырэнне .h ці .hpp), а ў крыніцы (пашырэнне c або cpp) звычайна ёсць вызначэнне. Мэта дэкларацыі - дазволіць праграмісту, які выкарыстоўвае функцыю або клас, які вы заяўляеце, выкарыстоўваць функцыю ці клас. Яно не мае патрэбы ў вызначэнні, бо гэта зыходны код, які паведамляе кампілятару, як на самай справе рабіць тое, што. Функцыя / клас павінны гэта рабіць, але дэкларацыя паказвае, што функцыя вяртае, якія аргументы прымае функцыя і як функцыя азначае, што яна можа выклікаць функцыю пазней з свайго кода. Калі да гэтага часу не было зразумела, вызначэнне ўтрымлівае зыходны код для вызначэння функцыі (адсюль слова "азначэнне"). Прыклад абодвух тут:
// тлумачэнне int doSomething (int x, int y); // азначэнне int doSomething (int x, int y) {return (x * y); }
адказ 4:
Абвяшчэнне якраз і заключаецца ў тым, што ён распавядае кампілятару, каб потым знайсці вызначэнне ў зыходным кодзе. Звычайна гэта ў загалоўку (пашырэнне .h ці .hpp), а ў крыніцы (пашырэнне c або cpp) звычайна ёсць вызначэнне. Мэта дэкларацыі - дазволіць праграмісту, які выкарыстоўвае функцыю або клас, які вы заяўляеце, выкарыстоўваць функцыю ці клас. Яно не мае патрэбы ў вызначэнні, бо гэта зыходны код, які паведамляе кампілятару, як на самай справе рабіць тое, што. Функцыя / клас павінны гэта рабіць, але дэкларацыя паказвае, што функцыя вяртае, якія аргументы прымае функцыя і як функцыя азначае, што яна можа выклікаць функцыю пазней з свайго кода. Калі да гэтага часу не было зразумела, вызначэнне ўтрымлівае зыходны код для вызначэння функцыі (адсюль слова "азначэнне"). Прыклад абодвух тут:
// тлумачэнне int doSomething (int x, int y); // азначэнне int doSomething (int x, int y) {return (x * y); }
адказ 5:
Абвяшчэнне якраз і заключаецца ў тым, што ён распавядае кампілятару, каб потым знайсці вызначэнне ў зыходным кодзе. Звычайна гэта ў загалоўку (пашырэнне .h ці .hpp), а ў крыніцы (пашырэнне c або cpp) звычайна ёсць вызначэнне. Мэта дэкларацыі - дазволіць праграмісту, які выкарыстоўвае функцыю або клас, які вы заяўляеце, выкарыстоўваць функцыю ці клас. Яно не мае патрэбы ў вызначэнні, бо гэта зыходны код, які паведамляе кампілятару, як на самай справе рабіць тое, што. Функцыя / клас павінны гэта рабіць, але дэкларацыя паказвае, што функцыя вяртае, якія аргументы прымае функцыя і як функцыя азначае, што яна можа выклікаць функцыю пазней з свайго кода. Калі да гэтага часу не было зразумела, вызначэнне ўтрымлівае зыходны код для вызначэння функцыі (адсюль слова "азначэнне"). Прыклад абодвух тут:
// тлумачэнне int doSomething (int x, int y); // азначэнне int doSomething (int x, int y) {return (x * y); }
адказ 6:
Абвяшчэнне якраз і заключаецца ў тым, што ён распавядае кампілятару, каб потым знайсці вызначэнне ў зыходным кодзе. Звычайна гэта ў загалоўку (пашырэнне .h ці .hpp), а ў крыніцы (пашырэнне c або cpp) звычайна ёсць вызначэнне. Мэта дэкларацыі - дазволіць праграмісту, які выкарыстоўвае функцыю або клас, які вы заяўляеце, выкарыстоўваць функцыю ці клас. Яно не мае патрэбы ў вызначэнні, бо гэта зыходны код, які паведамляе кампілятару, як на самай справе рабіць тое, што. Функцыя / клас павінны гэта рабіць, але дэкларацыя паказвае, што функцыя вяртае, якія аргументы прымае функцыя і як функцыя азначае, што яна можа выклікаць функцыю пазней з свайго кода. Калі да гэтага часу не было зразумела, вызначэнне ўтрымлівае зыходны код для вызначэння функцыі (адсюль слова "азначэнне"). Прыклад абодвух тут:
// тлумачэнне int doSomething (int x, int y); // азначэнне int doSomething (int x, int y) {return (x * y); }
адказ 7:
Абвяшчэнне якраз і заключаецца ў тым, што ён распавядае кампілятару, каб потым знайсці вызначэнне ў зыходным кодзе. Звычайна гэта ў загалоўку (пашырэнне .h ці .hpp), а ў крыніцы (пашырэнне c або cpp) звычайна ёсць вызначэнне. Мэта дэкларацыі - дазволіць праграмісту, які выкарыстоўвае функцыю або клас, які вы заяўляеце, выкарыстоўваць функцыю ці клас. Яно не мае патрэбы ў вызначэнні, бо гэта зыходны код, які паведамляе кампілятару, як на самай справе рабіць тое, што. Функцыя / клас павінны гэта рабіць, але дэкларацыя паказвае, што функцыя вяртае, якія аргументы прымае функцыя і як функцыя азначае, што яна можа выклікаць функцыю пазней з свайго кода. Калі да гэтага часу не было зразумела, вызначэнне ўтрымлівае зыходны код для вызначэння функцыі (адсюль слова "азначэнне"). Прыклад абодвух тут:
// тлумачэнне int doSomething (int x, int y); // азначэнне int doSomething (int x, int y) {return (x * y); }
адказ 8:
Абвяшчэнне якраз і заключаецца ў тым, што ён распавядае кампілятару, каб потым знайсці вызначэнне ў зыходным кодзе. Звычайна гэта ў загалоўку (пашырэнне .h ці .hpp), а ў крыніцы (пашырэнне c або cpp) звычайна ёсць вызначэнне. Мэта дэкларацыі - дазволіць праграмісту, які выкарыстоўвае функцыю або клас, які вы заяўляеце, выкарыстоўваць функцыю ці клас. Яно не мае патрэбы ў вызначэнні, бо гэта зыходны код, які паведамляе кампілятару, як на самай справе рабіць тое, што. Функцыя / клас павінны гэта рабіць, але дэкларацыя паказвае, што функцыя вяртае, якія аргументы прымае функцыя і як функцыя азначае, што яна можа выклікаць функцыю пазней з свайго кода. Калі да гэтага часу не было зразумела, вызначэнне ўтрымлівае зыходны код для вызначэння функцыі (адсюль слова "азначэнне"). Прыклад абодвух тут:
// тлумачэнне int doSomething (int x, int y); // азначэнне int doSomething (int x, int y) {return (x * y); }
адказ 9:
Абвяшчэнне якраз і заключаецца ў тым, што ён распавядае кампілятару, каб потым знайсці вызначэнне ў зыходным кодзе. Звычайна гэта ў загалоўку (пашырэнне .h ці .hpp), а ў крыніцы (пашырэнне c або cpp) звычайна ёсць вызначэнне. Мэта дэкларацыі - дазволіць праграмісту, які выкарыстоўвае функцыю або клас, які вы заяўляеце, выкарыстоўваць функцыю ці клас. Яно не мае патрэбы ў вызначэнні, бо гэта зыходны код, які паведамляе кампілятару, як на самай справе рабіць тое, што. Функцыя / клас павінны гэта рабіць, але дэкларацыя паказвае, што функцыя вяртае, якія аргументы прымае функцыя і як функцыя азначае, што яна можа выклікаць функцыю пазней з свайго кода. Калі да гэтага часу не было зразумела, вызначэнне ўтрымлівае зыходны код для вызначэння функцыі (адсюль слова "азначэнне"). Прыклад абодвух тут:
// тлумачэнне int doSomething (int x, int y); // азначэнне int doSomething (int x, int y) {return (x * y); }