标签: strlen

Strlen for non english language

我想在主页上显示文章的简短描述.描述是泰语和英语的混合.

我正在使用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)

谢谢.

php strlen

0
推荐指数
1
解决办法
493
查看次数

如何知道数组是否在C中初始化

如何知道数组是否在C中初始化?像strlen()这样的函数没有帮助我,因为我不想知道数组是否为空.

c arrays null strlen

0
推荐指数
1
解决办法
4650
查看次数

拼写检查程序问题

我正在尝试完成拼写检查项目并遇到一些问题.我正在尝试使用strlenstrcmp比较文章和字典中的单词,但编译器告诉我标识符"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)

c dictionary spell-checking strlen strcmp

0
推荐指数
1
解决办法
1532
查看次数

strlen如何为{'1','1'}和{'1','1','\ 0'}提供相同的输出?

strlen()被null终止吧?那么当strlen(c)和strlen时,char c [] = {'1','1'}和char d [] = {'1','1','\ 0'}如何给出相同的输出2 (d)用过吗?

c arrays null strlen

0
推荐指数
1
解决办法
116
查看次数

根据字符长度删除数组元素

我有一个数组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)

php arrays strlen unset array-unset

0
推荐指数
2
解决办法
1122
查看次数

strlen()如何计算当前函数中未定义的字符串的长度?

据我所知,在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 …

c string strlen

0
推荐指数
1
解决办法
4414
查看次数

我误解了strlen()吗?

我正在尝试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)

#1 Visual Aid

$prize_text = "Watch Good Day Sunshine Today!";
Run Code Online (Sandbox Code Playgroud)

#2视觉援助

$prize_text = "abcdefghijklmnopqrstuvwxyz";
Run Code Online (Sandbox Code Playgroud)

#3视觉援助

为什么一切都不匹配?我想要一个缩短文本的统一标准,然后添加三个点.我的代码出了什么问题?

php strlen

0
推荐指数
1
解决办法
40
查看次数

strlen无法正常工作

我正在创建一个简单的注册表单,我的问题是,当我使用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)

php forms strlen

0
推荐指数
1
解决办法
979
查看次数

strlen没有返回正确的字符数

出于某种原因,当我输入/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)

c string strlen

0
推荐指数
1
解决办法
108
查看次数

是什么导致“不兼容的隐式声明”警告?

我正在尝试使用该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'的不兼容隐式声明

我确实在网上找到了正确的代码,但是我的逻辑到底出了什么问题?需要一点帮助。

c strlen

0
推荐指数
1
解决办法
116
查看次数

标签 统计

strlen ×10

c ×6

php ×4

arrays ×3

null ×2

string ×2

array-unset ×1

dictionary ×1

forms ×1

spell-checking ×1

strcmp ×1

unset ×1