05-26-2013
No, any additional info is very welcome. Both, pointers and the whole subject of memory, is very hard for me, in general.
Reading the FAQ about name[3] and *name i think this: I am quite sure that i read somewhere (K&R?) that the compiler immediatly translates the one to the other ( i think indexed to pointers). All i can find in my book is this: "There is one difference between and array name and a pointer that must be kept in mind. A pointer is a variable, pa=a and pa++ are legal. But an array name is not a variable; constructions like a=pa and a++ are illegal"
I am not sure, but i think what i wrote above, that list++ gives me an lvalue error, is related? After Don's explanation: In your program, list is the address where an array of pointers to characters is stored. The statement: list++ would be an attempt to move that array to a new location in memory. Since you can't do that, the C compiler won't allow it."
i seem to be sure, but it won't hurt to ask if i am right.
side note: I am never sure about the right terminology. Please correct me if i use terms wrong.
10 More Discussions You Might Find Interesting
1. Programming
If one wants to get a start address of a array or a string or a block of memory via a function, there are at least two methods to achieve it:
(1) one is to pass a pointer-to-pointer parameter, like:
int my_malloc(int size, char **pmem)
{
*pmem=(char *)malloc(size);
if(*pmem==NULL)... (11 Replies)
Discussion started by: aaronwong
11 Replies
2. Programming
I have been getting some flack recently for my use of strlen() and strnlen(). Honestly I have always just taken their functionality for granted as being the easiest way of getting the length of a string. Is it really so much better to do pointer arithmetic? What am I gaining besides more... (3 Replies)
Discussion started by: jjinno
3 Replies
3. Shell Programming and Scripting
Hi all,
Iīve already searched the forum but canīt find what i am doing wrong.
I am trying to compare two variables using ksh under red hat. The error I get is:
-ksh: .: MDA=`md5sum /tmp/ftp_dir_after_transfer | cut -d' ' -f1 `
MDB=`md5sum /tmp/ftp_dir_before_transfer | cut -d' ' -f1 `... (3 Replies)
Discussion started by: old_mike
3 Replies
4. Programming
Suppose to have:
struct Tstudent
{
string name, surname;
int matriculation_num;
};
struct Tnode
{
Tstudent* student;
Tnodo* next;
} L;I want to deference that "student" pointer. For example, I tried with:
*(L->student).matriculation_numbut it not worked, as terminal... (4 Replies)
Discussion started by: Luke Bonham
4 Replies
5. Programming
I have a fundamental question on C pointer arithmetry..
Suppose i have a c string pointer already pointing to a valid location, Can I just do a
charptr = charptr +1;
to get to the next location, irregardless if my program is 32 or 64 bits?
or should i do it this way:
charptr =... (1 Reply)
Discussion started by: Leion
1 Replies
6. Shell Programming and Scripting
Hi all,
Could someone please advise what is the correct syntax for my little script to process a table of values?
The table is as follows:
0.002432 20.827656
0.006432 23.120364
0.010432 25.914184
0.014432 20.442655
0.018432 20.015243
0.022432 21.579517
0.026432 18.886874... (9 Replies)
Discussion started by: euval
9 Replies
7. UNIX for Dummies Questions & Answers
Hello guys,
should be a very easy questn for you:
I need to delete strings in file1 based on the list of strings in file2.
like file2:
word1_word2_
word3_word5_
word3_word4_
word6_word7_
file1:
word1_word2_otherwords..,word3_word5_others... (7 Replies)
Discussion started by: roussine
7 Replies
8. Shell Programming and Scripting
I have a file 1.txt with the below contents.
-----cat 1.txt-----
1234
5678
1256
1234
1247
-------------------
I have 3 more files in a folder
-----ls -lrt-------
A1.txt
A2.txt
A3.txt
-------------------
The contents of those three files are similar format with different data values... (8 Replies)
Discussion started by: realspirituals
8 Replies
9. Programming
I am trying to test some operations on a directed list. However, the declaration of a pointer is giving me trouble.
I seem to have done something incorrectly because I get an error:
"listtest.c:29: warning: 'p' may be used uninitialized in this function"
Can anyone help?
This is my code... (6 Replies)
Discussion started by: bluetxxth
6 Replies
10. UNIX for Beginners Questions & Answers
Hello Everyone ,
Iam a newbie to shell programming and iam reaching out if anyone can help in this :-
I have two files
1) Insert.txt
2) partition_list.txt
insert.txt looks like this :-
insert into emp1 partition (partition_name)
(a1,
b2,
c4,
s6,
d8)
select
a1,
b2,
c4, (2 Replies)
Discussion started by: nubie2linux
2 Replies
FBB::mlm(3bobcat) OFoldStream manipulator FBB::mlm(3bobcat)
NAME
FBB::mlm - Manipulator modifying left margins of OFoldStream objects
SYNOPSIS
#include <bobcat/ofoldstream> or
#include <bobcat/ofoldstreambuf>
Linking option: -lbobcat
DESCRIPTION
The mlm class implements a manipulator that can be inserted into OFoldStream objects to modify the stream's left margin by a requested
amount. The request cannot result in a negative left margin value. If a negative left margin would be the arithmetic result of the request
then left margin 0 will silently be used.
Depending on the tab-setting of the OFoldStream the inserted value represents the number of blank space characters or the number of
tab-characters that will be added to the left margin.
The request will be processed at the next newline character or std::flush or std::endl manipulator that is inserted into the stream. If a
line is still empty once an mlm object and a flush manipulator are inserted into the stream then the new left margin will be effective at
the next word inserted into that line (cf., the example section below)
A bad_cast exception is thrown when the manipulator is inserted into an ostream that is not using a OFoldStreambuf buffer.
NAMESPACE
FBB
All constructors, members, operators and manipulators, mentioned in this man-page, are defined in the namespace FBB.
INHERITS FROM
-
CONSTRUCTOR
o mlm(int addValue):
The standard copy constructor is available.
MEMBER FUNCTIONS
There are no public or protected member functions in this class.
EXAMPLE
#include <iostream>
#include <bobcat/ofoldstream>
using namespace std;
using namespace FBB;
int main()
{
OFoldStream out(cout, 0, 80);
out << "hello world (left margin is 0)" << mlm(4) << "
"
"this uses a 4 character wide left margin
" <<
mlm(-10) << flush <<
"left margin -6 changed to 0, active on this line
";
return 0;
}
FILES
bobcat/mlm - defines the class interface
SEE ALSO
bobcat(7), manipulators(3bobcat), lm(3bobcat), ofoldstream(3bobcat)
BUGS
None Reported.
DISTRIBUTION FILES
o bobcat_3.01.00-x.dsc: detached signature;
o bobcat_3.01.00-x.tar.gz: source archive;
o bobcat_3.01.00-x_i386.changes: change log;
o libbobcat1_3.01.00-x_*.deb: debian package holding the libraries;
o libbobcat1-dev_3.01.00-x_*.deb: debian package holding the libraries, headers and manual pages;
o http://sourceforge.net/projects/bobcat: public archive location;
BOBCAT
Bobcat is an acronym of `Brokken's Own Base Classes And Templates'.
COPYRIGHT
This is free software, distributed under the terms of the GNU General Public License (GPL).
AUTHOR
Frank B. Brokken (f.b.brokken@rug.nl).
libbobcat1-dev_3.01.00-x.tar.gz 2005-2012 FBB::mlm(3bobcat)