Question:
how do we empty an array using C language? like i want to set the value referenced by an array to NULL.?
Jeffrey J
2007-07-25 22:21:50 UTC
how do we empty an array using C language? like i want to set the value referenced by an array to NULL.?
Ten answers:
2007-07-25 23:15:01 UTC
More efficient method : memset(string,0x0,sizeof(string));
Beulah
2015-08-18 10:57:44 UTC
This Site Might Help You.



RE:

how do we empty an array using C language? like i want to set the value referenced by an array to NULL.?
emmery
2016-10-19 07:29:40 UTC
C Clear Array
abd
2007-07-25 22:33:29 UTC
i will go with suvidha, and for clearness:

u know the 1st reply to your question is only assigning the value 0 to the array items, it is always keeping space in the memory, value 0 is treated like any other value

the 2nd reply to your question is the best, it is assiging them to null, means they are refering to nothing in the memory, this is how u empty an array
2016-04-08 03:36:44 UTC
For the best answers, search on this site https://shorturl.im/avCvW



While most modern programming languages provide some way of declaring optional function parameters, C# doesn’t provide a way of directly doing so, despite the fact that VB.NET and .NET’s attribute system both support this functionality. This is a subject of some debate currently in the C# community. The C# development team’s position seems to boil down to the following: When provided, this feature is usually nothing more than dressing up method overloading with a little syntactic sugar. When you get right down to it, their position makes some sense. A function with an optional parameter is in reality two different functions: one that assumes some default behavior if the optional parameter is omitted, and another that performs more specific behavior based on the value of the optional parameter if provided. But that doesn’t change the fact that using overloaded methods to provide optional parameter support feels a little clunky. It works, but you always wind up writing more code, and you pollute your object interface with the extra method signatures required to support all of your optional parameters. Let’s look at some alternatives. Parameter arrays If you take a look at the classes found in the common language runtime (CLR), you’ll find more than a few with methods that can accept a variable-length list of parameters. One example would be the System.Console.WriteLine method, which has an overloaded declaration that works to support replaceable parameters in the string written to the console. For example, this code: Console.WriteLine("{0} jumped over {1}.", "The cow", "the moon"); produces the following output: The cow jumped over the moon. Any number of replaceable parameters can be specified in this fashion, which means that the number of arguments passed to the WriteLine method can vary from call to call. C# supports this behavior with the params keyword, which, when used before an array type in a function’s argument list, creates a parameter array. You can use this array to fake optional parameters in practice. Check out Listing A for an example of this in action. You can see that this solution works pretty well. The OptionalStrings method may be legally called with no parameters, in which case the parameter array args is simply empty—in effect, the entire array is optional. Further, the calling function doesn’t need to explicitly wrap the parameters it sends in an array, and since the parameter array is an honest-to-goodness array, the called function can easily determine how many parameters it has received. But there are a few caveats: * · There’s no enforceable limit to the number of arguments received in this way. You couldn’t, for instance, declare the OptionalStrings method to receive a maximum of three optional arguments without writing code to do so at runtime inside the function itself. * · Similarly, there’s no way to make the array typesafe. If you need to support multiple types in the parameter array, you’re limited to using a lowest-common-denominator approach, usually declaring the parameter array as type Object. * · Only one parameter may be marked using params, and it must be the last parameter in the method’s argument list. * · You can't specify an optional out (passed by reference) parameter using this method. An object-oriented solution Another possible solution would be to create a class encapsulating all the possible arguments a method could receive, and pass an instance of that class to the method in question. This approach makes sense from an object-oriented point of view and solves the problems I pointed out with the parameter array solution, as you can see from Listing B. By creating a default, parameterless constructor for the ParameterClass class, I can set whatever default values I want for the public fields, which represent the possible parameters for the OptionalObjects method. I just override any of the fields I’m interested in actually providing a value for, and pass the whole object to OptionalObjects. Because objects are passed by reference, any changes made to a ParameterClass field while inside the OptionalObjects method are reflected when the method returns. In effect, the whole object is an out parameter. Not only does this provide a neat solution to the optional parameter conundrum, but passing arguments in the form of objects also serves to further insulate your classes from one another. It’s possible, using this method, to add additional arguments for OptionalObjects with a minimum of fuss. Simply redefining ParameterClass to contain the new fields is all that’s required. Not perfect, but it works None of these solutions is perfect, but they all enable you to fake your way into supporting optional parameters in your applications. Since the last word received from Microsoft seems to indicate that built-in optional parameter support will not be forthcoming, we’ll have to get by with workarounds like these.
Suvidha A
2007-07-25 22:29:01 UTC
Create an integer array



int arr[10],x;

for(x=0;x<9;x++)

{

arr[x]=null;

}
2007-07-25 22:26:18 UTC
Easy. Lets create an array of int, and initialize them to 0:



int MyArray[25];



for (int i = 0; i < 25; i++)

MyArray[i]=0;
2016-03-19 06:38:34 UTC
No this is not possible in C#. I am not sure what you are trying to accomplish but you can look at using the "params" keyword on the method which allows you to pass in and amount of veraibles to a method: public void DoSomething(int id, params string[] options) { foreach(string option in options) { Debug.Write(option); } } You can call it like: MyClass.DoSomething(1,"Red","Blue",Gre... You could also look at using nullable types (new in 2.0)
cruppstahl
2007-07-26 01:23:10 UTC
actually, a C string is terminated by a zero-byte. To create an empty string, it's enough to set the very first element to zero:



char name[25];



// store a string

strcpy(name, "chris", strlen("chris"));



// delete it - set the first byte to 0

name[0]='\0';
Anuj Khandelwal
2014-08-27 04:10:51 UTC
memset(array, 0, sizeof(array));


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Continue reading on narkive:
Loading...