typedef struct node{
int data;
struct node *next;
}Node;
будет ли разница, если я использую «узел» вместо «Node»Можем ли мы использовать узел узла typedef struct;
typedef struct node{
int data;
struct node *next;
}node;
typedef struct node{
int data;
struct node *next;
}Node;
будет ли разница, если я использую «узел» вместо «Node»Можем ли мы использовать узел узла typedef struct;
typedef struct node{
int data;
struct node *next;
}node;
Нет, это просто название. Однако большинство соглашений о присвоении наименований C диктуют, что структуры typedef
капитализируются, поэтому большинство предпочитает Node
.
ОК, но почему я использовал соглашение об именовании 'C++' в коде 'C' (# ничего серьезного, просто для удовольствия). :-) –
Ouch .... я исправил это. Благодаря :) –
Имена тегов для структур, союзов и перечислений занимают другое пространство имен от других идентификаторов (включая имена typedef), поэтому typedef struct node { ... } node;
действителен.
Struct и профсоюзные имена членов занимают еще одно пространство имен, поэтому следующее является законным, если опрометчиво:
typedef struct foo { int foo; } foo;
Что вы не может сделать что-то вроде
typedef struct foo {...} foo;
foo foo;
так как имя typedef и имя переменной занимают одно и то же пространство имен.
Вы попробовали? Это (не) работало? –
Это просто имя. –
Это действительно. мы можем использовать его. – BLUEPIXY