DragonFly BSD
DragonFly submit List (threaded) for 2004-11
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: 5 more simple patches for usr.bin/make


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Sat, 13 Nov 2004 11:45:09 -0800 (PST)

:One thing you can improve is the use of static strings with write.
:E.g. instead of write(2, "BLA", 3); something either like
:const char msg_bla[] = "BLA";
:write(2, msg_bla, sizeof(msg_bla));
:
:or 
:
:#define WRITE(fd, str) write(fd, str, sizeof(str))
:
:would be useful, the hardwired string length is evil. Be careful though,
:the sizeof only works with char[], not char * !
:
:Joerg

    Well, remember that a string assignment to a char[] array includes
    the terminating \0.. so that will not work quite the way you wrote 
    it.

    Just do this:

	const char * const msg = "BLA";

	write(fd, msg, strlen(msg));

    GCC will calculate the strlen() for you at compile-time.

					-Matt
					Matthew Dillon 
					<dillon@xxxxxxxxxxxxx>



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]