• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
  • Skip to secondary sidebar

GoHired

Interview Questions asked in Google, Microsoft, Amazon

Join WeekEnd Online Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

  • Home
  • Best Java Books
  • Algorithm
  • Internship
  • Certificates
  • About Us
  • Contact Us
  • Privacy Policy
  • Array
  • Stack
  • Queue
  • LinkedList
  • DP
  • Strings
  • Tree
  • Mathametical
  • Puzzles
  • Graph

How strtok() Works

April 13, 2015 by Dhaval Dave

strtok() : Split string into tokens
Syntax :

char * strtok ( char * str, const char * delimiters );

Parameters
str C string to truncate.Notice that this string is modified by being broken into smaller strings (tokens). Alternativelly, a null pointer may be specified, in which case the function continues scanning where a previous successful call to the function ended.

delimiters   C string containing the delimiter characters. These can be different from one call to another.

Example

/* strtok example */
 #include <stdio.h>
 #include <string.h>
int main (){
char str[] ="- This, a sample string.";
char * pch;
printf ("Splitting string \"%s\" into tokens:\n",str);
pch = strtok (str," ,.-");
while (pch != NULL){
printf ("%s\n",pch);
pch = strtok (NULL, " ,.-");
}
return 0;
}

code courtesy : cplusplus.com

Why Function strtok() is not Thread Safe / reentrant

The strtok() function uses a intermediate static buffer while parsing, and reuse them at each call so it’s not thread safe.

Solution :

Use  strtok_r() to use strtok as thread safe

 

Similar Articles

Filed Under: Adobe Interview Questions, problem Tagged With: c, string

Reader Interactions

Primary Sidebar

Join WeekEnd Online/Offline Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

Join WeekEnd Online/Offline Batch from 4-April-2020

WhatsApp us

Secondary Sidebar

Custom Search

  • How I cracked AMAZON
  • LeetCode
  • Adobe
  • Amazon
  • Facebook
  • Microsoft
  • Hacker Earth
  • CSE Interview

Top Rated Questions

Binary Tree Isomorphic to each other

Python List

Mirror of Tree

Check if an array has duplicate numbers in O(n) time and O(1) space

Find two non repeating elements in an array of repeating elements

Binary Tree in Java

Find an index i such that Arr [i] = i in array of n distinct integers sorted in ascending order.

Interfaces in C++ (Abstract Classes in C++)

write a c program that given a set a of n numbers and another number x determines whether or not there exist two elements in s whose sum is exactly x

Top 10 Interviews Techniqes for Campus Interview in IIT NIT BITS for MTech

BFS (Breath First Search)

C++ OOPs Part1

Best Java Book | Top Java Programming Book for Beginners

Amazon Interview Experience – SDE Chennai

Memory Efficient LinkedList

Search element in a matrix with all rows and columns in sorted order

FizzBuzz Solution C C++

Find if two rectangles overlap

K’th Largest Element in BST when modification to BST is not allowed

Minimum insertions to form a palindrome

Length of the longest substring without repeating characters

The Magic HackerEarth Nirvana solutions Hiring Challenge

Singly linked list

Find next greater number with same set of digits

Circular Linked List

Possible sizes of bus to carry n groups of friends

Given array of 0’s and 1’s. All 0’s are coming first followed by 1’s. find the position of first 1

Rectangular chocolate bar Create at least one piece which consists of exactly nTiles tiles

Maximum path sum between two leaves

Test Cases for Round Function

Copyright © 2025 · Genesis Framework · WordPress · Log in