Linux C 字符串输出函数 puts()、fputs()、printf() 详解

一、puts() 函数详解

puts()函数用来向 标准输出设备 (屏幕)写字符串并换行,调用格式为:

puts(s);

其中s为字符串变量(字符串数组名或字符串指针)。

puts()函数的作用与语 printf("%s\n", s) 相同。

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv)
{
	char s[20], *f;

	strcpy(s, "Hello world!");	// 字符串数组变量赋值
	f = "Thank you";			// 字符串指针变量赋值

	puts(s);
	puts(f);

	return 0;
}

说明:

(1)puts()函数只能输出字符串,不能输出数值或进行格式变换。

(2)可以将字符串直接写入 puts() 函数中。如:

puts("Hello, Turbo C2.0");

二、fputs() 函数详解

原型:

int fputs(const char * s,FILE * stream);

功能描述:

将指定的字符串写入文件流中,不包含字符串结尾符‘\0‘,返回值是字符, 发生错误时返回值是EOF,利用它可以 替换文件流中数据,但是不能添加数据

示例:

#include <stdio.h>

int main(int argc, char **argv)
{
	FILE *fp;
	char *filename = "/Users/jianbao/ClionProjects/apue/123.txt";
	fp = fopen(filename, "r+");
	fseek(fp, 3, SEEK_CUR);

	fputs("Insert Strings.", fp);

	return 0;
}

原文件内容:

1234
Second Line. Second Strings.

修改后文件内容:

123Insert Strings. Second Strings.

可以看出,将原文件中的“\n及Second Line.” 替换为了“Insert Strings.”

时间: 2024-10-09 22:32:04

Linux C 字符串输出函数 puts()、fputs()、printf() 详解的相关文章

[转载]Linux C 字符串函数 sprintf()、snprintf() 详解

一.sprintf() 函数详解 在将各种类 型的数据构造成字符串时,sprintf 的强大功能很少会让你失望. 由于 sprintf 跟 printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出.这也导致 sprintf 比 printf 有用得多.所以本文着重介绍 sprintf,有时也穿插着用用 pritnf. sprintf是个变参函数,定义如下: int sprintf( char *buffer, const char *format [

Linux Shell字符串操作(长度\查找\替换)详解

在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系列操作符号,可以达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快. 一.判断读取字符串值 表达式 含义 ${var} 变量var的值, 与$var相同 ${var-DEFAULT} 如果var没有被声明, 那么就以$DEFAULT作为其值 * ${var:-DEFAULT} 如果var没有被声明, 或者其值为空, 那么就以$

【C语言天天练(十六)】字符串输出函数puts、fputs和printf

C有三个用于输出字符串的标准库函数puts().fputs()和printf(). 1.puts()函数只需要给出字符串参数的地址. #include <stdio.h> int puts(const char *s); 示例: #include <stdio.h> #define DEF "I am libing" int main(int argc, char **argv) { char str1[30] = "I am libing."

编程题:字符串输出函数puts()

#include<stdio.h> void main() {char str1[]="student",str2[]="teacher"; puts(str1);puts(str2); printf("%s",str1); printf("%s\n%s\n",str1,str2); } 编程题:字符串输出函数puts(),布布扣,bubuko.com

Linux内核模块编程与内核模块LICENSE -《详解(第3版)》预读

Linux内核模块简介 Linux内核的整体结构已经非常庞大,而其包含的组件也非常多.我们怎样把需要的部分都包含在内核中呢?一种方法是把所有需要的功能都编译到Linux内核.这会导致两个问题,一是生成的内核会很大,二是如果我们要在现有的内核中新增或删除功能,将不得不重新编译内核. 有没有一种机制使得编译出的内核本身并不需要包含所有功能,而在这些功能需要被使用的时候,其对应的代码被动态地加载到内核中呢?Linux提供了这样的一种机制,这种机制被称为模块(Module).模块具有这样的特点. 模块本

Linux文本处理必杀技之awk应用详解

AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一.这种编程及数据操作语言(其名称得自于它的创始人阿尔佛雷德·艾侯.彼得·温伯格和布莱恩·柯林汉姓氏的首个字母)的最大功能取决于一个人所拥有的知识.awk经过改进生成的新的版本nawk,gawk,现在默认linux系统下日常使用的是gawk,用命令可以查看正在应用的awk的来源(ls -l /bin/awk) awk是一款强大的报告日志生成处理工具,不同于sed和grep,它的侧重点是如何把文本信息更好的展

Linux 定时重启tomcat及配置定时任务详解

Linux 定时重启tomcat及配置定时任务详解 1.首先编写重启tomcat脚本 #!/bin/sh TOMCAT_PATH=tomcat地址路径/bin echo "TOMCAT_PATH is $TOMCAT_PATH" PID=`ps aux | grep tomcat地址路径 | grep java | awk '{print $2}'` if [ -n "$PID" ]; then echo "Will shutdown tomcat: $P

Linux系统根文件以及命名规则详解

一.Linux系统根文件详解 Linux的重要哲学思想其实就是:将程序的配置文件保存为纯文本格式. 1./boot:系统启动文件,如:内核文件,iniyrd以及gurb(bootloarder) 2./dev:目录下为设备文件,设备文件又分为块设备和字符设备: 块设备:按数据块随机访问,没有顺序. 字符设备:线性访问,按字符为单位进行. 注:其中背景为黑色,字体为***的文件,为特殊文件,"1,   0"分别为文件的主设备号和次设备号 [[email protected] ~]# ls

Linux中history历史命令使用方法详解

在/etc/profile里添加如下: #History export HISTTIMEFORMAT="[%F %T]" HISTDIR=/home/common/.hist if [ ! -d $HISTDIR ]; then         mkdir -p $HISTDIR         chmod 777 $HISTDIR fi export HISTSIZE=100000 export HISTFILE="$HISTDIR/${LOGNAME}.hist"