answersLogoWhite

0

pointer -> fieldname

User Avatar

Wiki User

15y ago

What else can I help you with?

Continue Learning about Engineering

What are nested structures in C?

Structures can contain other structures as members; in other words, structures can nest. Consider the following two structure types: struct first_structure_type { int member_of_1; }; struct second_structure_type { double double_member; struct first_structure_type first_struct_member; }; The first structure type is incorporated as a member of the second structure type. You can initialize a variable of the second type as follows: struct second_structure_type second_struct_member; second_struct_member.double_member = 12345.6789; second_struct_member.first_struct_member.integer_member_of_1 = 5; The member operator . is used to access members of structures that are themselves members of a larger structure. No parentheses are needed to force a special order of evaluation; a member operator expression is simply evaluated from left to right. In principle, structures can be nested indefinitely. Ref: http://www.crasseux.com/books/ctutorial/Nested-structures.html


How can an individual structure member be accessed in terms of its corresponding pointer variable?

By dereferencing the pointer variable. This can be achieved in two ways: typedef struct s { int i; float f; }; void f (struct s* p) { int x = p->i; /* using pointer to member operator */ float y = (*p).f; /* using dereference operator */ } The two methods are functionally equivalent.


Difference between c plus plus class and c structures?

The definition of the structure in C is limited to within the module and cannot be initialized outside its scope. Where as in C++ you can initialize the objects anywhere within the boundaries of the project.


What are the advantages of a class in C over a structure in C?

A C struct only has public member variables whereas a C++ class combines member variables with member functions; the methods that operate upon the data. Moreover, each member of a class can be assigned a different level of access from public, protected or private access, thus limiting the member's exposure. This allows classes to hide data and implementation details from outside of the class, exposing only as much as is necessary in order to use the class. Thus the class becomes entirely responsible for the integrity of its data, while its methods act as the gatekeepers to that data.Note that in C++, a struct is exactly the same as a class, other than the fact that the members of a struct are public by default while members of a class are private by default, unless explicitly declared otherwise. Aside from that they operate in exactly the same way. In other words, a C++ struct is not the same as a C struct.


What is meant by private access in c plus plus?

It isn't. Private is the default access for class members. For struct members, the default access is public. Aside from default access, a class and a struct serve the same purpose; to define a class. As such, the following class definitions are equivalent: class X { int a; }; struct Y { private: int b; }; Typically, we use a struct to define simple data types with trivial construction and use class for more complex data types, often to encapsulate an invariant or to acquire a resource, hiding the implementation details from consumers using private access.

Related Questions

What are nested structures in C?

Structures can contain other structures as members; in other words, structures can nest. Consider the following two structure types: struct first_structure_type { int member_of_1; }; struct second_structure_type { double double_member; struct first_structure_type first_struct_member; }; The first structure type is incorporated as a member of the second structure type. You can initialize a variable of the second type as follows: struct second_structure_type second_struct_member; second_struct_member.double_member = 12345.6789; second_struct_member.first_struct_member.integer_member_of_1 = 5; The member operator . is used to access members of structures that are themselves members of a larger structure. No parentheses are needed to force a special order of evaluation; a member operator expression is simply evaluated from left to right. In principle, structures can be nested indefinitely. Ref: http://www.crasseux.com/books/ctutorial/Nested-structures.html


How can an individual structure member be accessed in terms of its corresponding pointer variable?

By dereferencing the pointer variable. This can be achieved in two ways: typedef struct s { int i; float f; }; void f (struct s* p) { int x = p->i; /* using pointer to member operator */ float y = (*p).f; /* using dereference operator */ } The two methods are functionally equivalent.


Which is public to all access class or struct or function or variable?

The default access specifier for a class is private. The default access specifier for a struct is public. It does not matter if it is a function or a variable.


Where is c class made?

The C language does not support classes, per se, like the C++ language does. The closest the C language comes to a class is in the typdef struct... typdef struct _myClass { ... ... }; myClass; But you won't have any methods, inheritance, polymorphism, operator overloading, access specifiers, etc. like you do in C++.


Difference between c plus plus class and c structures?

The definition of the structure in C is limited to within the module and cannot be initialized outside its scope. Where as in C++ you can initialize the objects anywhere within the boundaries of the project.


How do you access the members of a structure?

In C, we use a struct to define a data type that represents the aggregate of two or more named variables known as members. The members of a struct need not be of the same type:struct T {int x;double y;char* z;};Once we have defined a structure, we can use it to create an instance of the type:T obj;We can access the members of a named object using the dot operator (.):obj.x = 42;obj.y = 3.14;obj.z = "Hello world!";If we hold a pointer to an object of the type, we use the pointer-to-member operator (->) instead:void f (T* ptr) {ptr->x = 42;ptr->y = 3.14;ptr->z = "Hello world!";}


What are the advantages of a class in C over a structure in C?

A C struct only has public member variables whereas a C++ class combines member variables with member functions; the methods that operate upon the data. Moreover, each member of a class can be assigned a different level of access from public, protected or private access, thus limiting the member's exposure. This allows classes to hide data and implementation details from outside of the class, exposing only as much as is necessary in order to use the class. Thus the class becomes entirely responsible for the integrity of its data, while its methods act as the gatekeepers to that data.Note that in C++, a struct is exactly the same as a class, other than the fact that the members of a struct are public by default while members of a class are private by default, unless explicitly declared otherwise. Aside from that they operate in exactly the same way. In other words, a C++ struct is not the same as a C struct.


What is meant by private access in c plus plus?

It isn't. Private is the default access for class members. For struct members, the default access is public. Aside from default access, a class and a struct serve the same purpose; to define a class. As such, the following class definitions are equivalent: class X { int a; }; struct Y { private: int b; }; Typically, we use a struct to define simple data types with trivial construction and use class for more complex data types, often to encapsulate an invariant or to acquire a resource, hiding the implementation details from consumers using private access.


How are the keywords struct and class different?

The keyword class is not a keyword in C. It is a keyword in C++, so I have added C++ to the category list for this question.The default access specifier for struct is public, while for class, it is private.Struct does not allow you to specify methods, while class does.A struct is not a class, and cannot be derived, while a class can be treated as a struct, if the scope and access is correct.


What are the differences between struct and class in C and how do they impact the design and implementation of data structures?

In C, the main difference between struct and class is that struct members are public by default, while class members are private by default. This impacts the design and implementation of data structures because structs are often used for simple data containers with public access to their members, while classes are used for more complex data structures with private member access and encapsulation. This allows for better control over data access and manipulation, leading to more secure and organized code.


How would you alter the value stored in the structure member using function?

Pass the structure by reference then dereference the member. typedef struct S { int x; }; void foo (struct S* s) { s->x=42; }


Syntex for accessing data members of the structure in c plus plus?

Use the member accessor (.) operator. struct object { int m_data; }; int main() { object o; o.m_data = 100; std::cout << o.m_data << std::cout; return(0); }