我想在主页上显示文章的简短描述.描述是泰语和英语的混合.
我正在使用strlen的这个函数
mb_strlen($str, 'UTF-8');
Run Code Online (Sandbox Code Playgroud)
但这不是准确的,因为有些描述最终只有一行而有些最多有3行,我想要显示两行的描述.
如果strlen大于155我做
$descr = mb_strlen($descr, 'UTF-8') > 155 ? substr($descr, 0, 152) . '...' : $descr;
Run Code Online (Sandbox Code Playgroud)
谢谢.
如何知道数组是否在C中初始化?像strlen()这样的函数没有帮助我,因为我不想知道数组是否为空.
我正在尝试完成拼写检查项目并遇到一些问题.我正在尝试使用strlen和strcmp比较文章和字典中的单词,但编译器告诉我标识符"strlen"和"strcmp"是未定义的.我不知道该怎么做.此外,当我加载char(article)到int ArticleLength,它告诉我,我不能烧焦文章INT使用.我是一个初学者,需要一些帮助.到目前为止,这是我的代码.
#include <stdio.h> // provides declarations for printf and putchar
#include <stdint.h> // provides declarations for int32_t uint32_t and the other (new) standard C type
/* You must write this function (spellCheck). Do not change the way the function is declared (i.e., it has
* exactly two parameters, each parameter is a standard (mundane) C string (see SpellCheck.pdf).
* You are expected to use reasonable programming style. I *insist* that you …Run Code Online (Sandbox Code Playgroud) strlen()被null终止吧?那么当strlen(c)和strlen时,char c [] = {'1','1'}和char d [] = {'1','1','\ 0'}如何给出相同的输出2 (d)用过吗?
我有一个数组PHP:
$array = array("Linda","Chadwick","Bari","Angela","Marco");
Run Code Online (Sandbox Code Playgroud)
因此,
$array[0]="Linda"
$array[1]="Chadwick"
$array[2]="Bari"
$array[3]="Angela"
$array[4]="Marco"
Run Code Online (Sandbox Code Playgroud)
我想删除具有字符串长度的名称<=4.
这样,键就被调整了.
$array[0]="Linda"
$array[1]="Chadwick"
$array[2]="Angela"
$array[3]="Marco"
Run Code Online (Sandbox Code Playgroud) 据我所知,在C数组和指向字符串的指针中,并不隐含地包含有关相应数组中元素数量的信息.这就是为什么argc必须通过main()除了argv.但是,我的机器下面的代码不正确打印字符串的长度"Hello"是5即使字符串不是在相同的范围内定义printf().
#include <stdio.h>
#include <string.h>
void p1(char *a)
{
printf("%lu\n", strlen(a));
}
void p2(char a[])
{
printf("%lu\n", strlen(a));
}
int main(int argc, char *argv[])
{
char *a = "Hello";
char b[] = "Hello";
char c[] = {'H', 'e', 'l', 'l', 'o', '\0'};
char d[] = {'H', 'e', 'l', 'l', 'o'};
p1(a);
p2(a);
printf("\n");
p1(b);
p2(b);
printf("\n");
p1(c);
p2(c);
printf("\n");
p1(d);
p2(d);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这是我的结果和机器类型:
$ ./a.out
5 …
我正在尝试strlen()在PHP中正确理解,以创建一个缩短文本并完成文本的应用程序...
我的代码:
$prize_text = "Learn how to eat pizza TODAY";
if (strlen($prize_text) > 24) {
$prize_text = substr($prize_text, 0, 21) . '...';
}
Run Code Online (Sandbox Code Playgroud)
$prize_text = "Watch Good Day Sunshine Today!";
Run Code Online (Sandbox Code Playgroud)
$prize_text = "abcdefghijklmnopqrstuvwxyz";
Run Code Online (Sandbox Code Playgroud)
为什么一切都不匹配?我想要一个缩短文本的统一标准,然后添加三个点.我的代码出了什么问题?
我正在创建一个简单的注册表单,我的问题是,当我使用strlen函数时,当我输入数字作为密码时它不会显示任何内容,当我输入不是数字时它会显示消息,即使它超过6个字符
<?php
if (isset($_POST['signup'])) {
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$phone = $_POST['phone-number'];
$address = $_POST['address'];
$password = $_POST['password'];
$cpassword = $_POST['cpassword'];
}
if (isset($password)) {
if (strlen($password < 6)) {
$password_err = "password must be at least 6 characters";
}
}
?>
<?php
if (isset($password_err)){
echo $password_err;
}
?>
Run Code Online (Sandbox Code Playgroud) 出于某种原因,当我输入/bin/echo后输入时,strlen在这里说14应该是10.我似乎无法弄清楚为什么.
char buffer[BUF_SIZE]; // BUF_SIZE = 100
ssize_t readIn = read(STDIN_FILENO, &buffer, BUF_SIZE);
printf("strlen=%lu\n", strlen(buffer));
Run Code Online (Sandbox Code Playgroud)
这与/性格有关吗?
编辑:
当我一次遍历一个char时,这就是缓冲区打印出来的内容:
#0: c=/ / hex=2f
#1: c=b / hex=62
#2: c=i / hex=69
#3: c=n / hex=6e
#4: c=/ / hex=2f
#5: c=e / hex=65
#6: c=c / hex=63
#7: c=h / hex=68
#8: c=o / hex=6f
#9: c=
/ hex=a
#10: c= / hex=5
#11: c=? / hex=ffffff90
#12: c=? / hex=ffffffff
#13: c= / hex=7f
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用该strlen()函数找出字符串中的字符数。用户输入一个句子,并且代码必须显示字符串中的字符数。
int l;
char string[64];
printf("Enter a statement: \n");
scanf("%s",&string);
l = strlen(string);
printf("%d",l);
Run Code Online (Sandbox Code Playgroud)
该代码无法正确运行,并显示以下警告:[警告]内置函数'strlen'的不兼容隐式声明
我确实在网上找到了正确的代码,但是我的逻辑到底出了什么问题?需要一点帮助。