04-16-2002
Well, if I use scanf("%s", &Ch) the program works correctly, but the 'enter' character and the terminating character '\0' where are stored?
Isn't this an error? Don't these two characters overwrite the two bytes of memory next to the "Ch" variable?
If the method you shown me is ok, then when do we need to use "%c" or other functions that reads only a character (like getchar) ?
I still don't understand...
Another question: I want to read a string, scanning also spaces and tabs and check the length (and if necessary prompt the user to re-enter the string). Is the use of fgets followed by sscanf the best method I can use? Or are there any better methods?
Thanks a lot for your help!
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
i have instaled a boot loader and win98 on drive c: and linux on drive d: and when i go to boot with the loader into linux nottin happens.is there some way i should install lilo to let it boot of a loader on drive c: ? (5 Replies)
Discussion started by: perleo
5 Replies
2. UNIX for Dummies Questions & Answers
can someone tell me what commands in Linux RedHat 8.0 will give me a graph of whats going on on my system. When Is ay graphs I mean graphs like does produced by perfview of solaris and glance of HP-UX. (3 Replies)
Discussion started by: TRUEST
3 Replies
3. Programming
hi i am a beginner to C
i have encountered a problem with my assignment, and i have researched it on the internet, but unfortunately i didn't find anything related to that.
i am writing a simple program that takes user's input by prompt command, and parse the whole line into an array of... (1 Reply)
Discussion started by: inkfish
1 Replies
4. Programming
hi all
i have a program in C (Unix Solaris 5.7) and i want to read a string from keyboard, but the "scanf" doesn´t reads spaces.
example:
....
char name;
....
printf("Enter your name: ");
scanf("%s",&name);
printf ("Your name is: %s", name);
and if i write Kevin Costner ... (4 Replies)
Discussion started by: DebianJ
4 Replies
5. Programming
hi all!
i've written a simple c program:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a;
char b;
char c;
... (4 Replies)
Discussion started by: mridula
4 Replies
6. Programming
Hello everyone,
I hope someone is awake to help me on this..
hey How can I do something like this:
The user is asked is asked to enter an int value, but I want to provide a default value on stdout, which they can back space and change it to whatever they want..
for e.g:
Enter the... (4 Replies)
Discussion started by: the_learner
4 Replies
7. Programming
I don't know how to do this:
printf("creazione nuovo messaggio\n");
printf("insert dest\n");
scanf("%s",dest);
printf("insert object\n");
scanf("%s",ogg);
printf("inserire text\n");
scanf("%s",test);
... (7 Replies)
Discussion started by: italian_boy
7 Replies
8. Programming
Im a newbie to programming language, i found tat there r these function called printf and putchar() as well as scanf and getchar(), im curious abt why do dey hav these 2 different function although dey r doing the same instruction? :confused: (13 Replies)
Discussion started by: kris26
13 Replies
9. Shell Programming and Scripting
$ cc Array.c
Array.c: In function ‘main’:
Array.c:23: warning: passing argument 1 of ‘scanf’ makes po
Array.c:25: error: expected expression before ‘return’
Array.c:29: error: expected expression before ‘return’
Array.c: At top level:
Array.c:44: error: expected ‘)’ before ‘&’ token... (8 Replies)
Discussion started by: sgradywhite
8 Replies
10. Programming
I have a problem with scanf() for string pointer as member of a struct.
#include <stdio.h>
#include <stdlib.h>
struct Student {
int studentNumber;
int phoneNumber;
char *studentName; //line 7
// char studentName; //line 8
};
int... (10 Replies)
Discussion started by: yifangt
10 Replies
LEARN ABOUT FREEBSD
linux
LINUX(4) BSD Kernel Interfaces Manual LINUX(4)
NAME
linux -- Linux ABI support
SYNOPSIS
To compile support for this ABI into an i386 kernel place the following line in your kernel configuration file:
options COMPAT_LINUX
for an amd64 kernel use:
options COMPAT_LINUX32
Alternatively, to load the ABI as a module at boot time, place the following line in loader.conf(5):
linux_load="YES"
DESCRIPTION
The linux module provides limited Linux ABI (application binary interface) compatibility for userland applications. The module provides the
following significant facilities:
o An image activator for correctly branded elf(5) executable images
o Special signal handling for activated images
o Linux to native system call translation
It is important to note that the Linux ABI support it not provided through an emulator. Rather, a true (albeit limited) ABI implementation
is provided.
The following sysctl(8) tunable variables are available:
compat.linux.osname Linux kernel operating system name.
compat.linux.osrelease Linux kernel operating system release. Changing this to something else is discouraged on non-development systems,
because it may change the way Linux programs work. Recent versions of GNU libc are known to use different syscalls
depending on the value of this sysctl.
compat.linux.oss_version Linux Open Sound System version.
The linux module can be linked into the kernel statically with the COMPAT_LINUX kernel configuration option or loaded as required. The fol-
lowing command will load the module if it is neither linked into the kernel nor already loaded as a module:
if ! kldstat -v | grep -E 'linux(aout|elf)' > /dev/null; then
kldload linux > /dev/null 2>&1
fi
Note that dynamically linked Linux executables will require a suitable environment in /compat/linux. Specifically, the Linux run-time
linker's hints files should be correctly initialized. For this reason, it is common to execute the following commands to prepare the system
to correctly run Linux executables:
if [ -x /compat/linux/sbin/ldconfig ]; then
/compat/linux/sbin/ldconfig -r /compat/linux
fi
For information on loading the linux kernel loadable module automatically on system startup, see rc.conf(5). This information applies
regardless of whether the linux module is statically linked into the kernel or loaded as a module.
FILES
/compat/linux minimal Linux run-time environment
/compat/linux/proc limited Linux process file system
/compat/linux/sys limited Linux system file system
SEE ALSO
brandelf(1), elf(5), linprocfs(5), linsysfs(5)
HISTORY
Linux ABI support first appeared in FreeBSD 2.1.
BSD
February 8, 2010 BSD